У меня есть приложение Python для приложения Google App, которое взаимодействует с экземпляром JIRA Cloud.JIRA REST API вызывает ошибки при использовании аутентификации JSESSIONID cookie с использованием urlfetch
На сегодняшний день приложение вызывает urlfetch
звонки в JIRA с использованием базовой аутентификации, но поскольку сейчас он делает десятки отдельных вызовов REST, как POST, так и GET, я надеялся, что использование аутентификации cookie несколько уменьшит задержку.
пример кода Basic-аутентификации, который работает:
result = urlfetch.fetch(jira_url,
deadline=60,
headers={"Authorization": "Basic %s" %
base64.b64encode("%s:%s" % (username, password))
})
и печенье альтернатива:
result = urlfetch.fetch(jira_url,
deadline=60,
headers={"X-Atlassian-Token": "no-check",
"Cookie": "JSESSIONID=529…snip…C4C"
})
Я извлек JSESSIONID успешно используя инструкции, но запрос печенье будет возвращать только "401 - Unauthorized" error while loading this page.
ошибки, если cookie истек.
{
"errorMessages" : [
"You do not have the permission to see the specified issue.",
"Login Required"
],
"errors" : {}
}
Я вспоминаю печенье с Memcache, поскольку большинство взаимодействий сделаны из очереди задач и обязательно отдельный поток, но печенье сразу же генерируется до вызова.