Внезапно я получаю сообщение об ошибке во время процесса Oauth после того, как моему приложению было предоставлено разрешение на доступ пользователем, и код авторизации доставляется на мой URL-адрес перенаправления. Я использую один и тот же код уже пару недель, и он работает нормально. Я почти уверен, что не вносил никаких изменений.
Есть ли проблема с Google Drive API сегодня?
Ошибка возникает здесь, в коде Python:
credentials = flow.step2_exchange(authorization_code)
Сообщение об ошибке:
FlowExchangeError: Invalid response 400.
Весь метод exchange_code скопирован из примера Google:
def exchange_code(authorization_code):
"""Exchange an authorization code for OAuth 2.0 credentials.
Args:
authorization_code: Authorization code to exchange for OAuth 2.0
credentials.
Returns:
oauth2client.client.OAuth2Credentials instance.
Raises:
CodeExchangeException: an error occurred.
"""
logging.debug(authorization_code);
flow = flow_from_clientsecrets(CLIENTSECRETS_LOCATION, ' '.join(SCOPES))
flow.redirect_uri = REDIRECT_URI
try:
credentials = flow.step2_exchange(authorization_code)
return credentials
except FlowExchangeError, error:
logging.error('An error occurred: %s', error)
raise CodeExchangeException(None)
Используя Oauth Playground, я получаю следующий ответ об ошибке:
HTTP/1.1 400 Ok
Status: 400
Content-length: 37
X-xss-protection: 1; mode=block
X-content-type-options: nosniff
X-google-cache-control: remote-fetch
-content-encoding: gzip
Server: GSE
Via: HTTP/1.1 GWA
Pragma: no-cache
Cache-control: no-cache, no-store, max-age=0, must-revalidate
Date: Fri, 10 Aug 2012 03:23:54 GMT
X-frame-options: SAMEORIGIN
Content-type: application/json
Expires: Fri, 01 Jan 1990 00:00:00 GMT
{
"error" : "unauthorized_client"
}
Есть идеи, почему это могло начать происходить, когда код работал неделями, как сейчас?
Спасибо, Крис