Ошибка redirect_uri_mismatch при авторизации на сервере для Google Play Games - PullRequest
0 голосов
/ 29 апреля 2019

Я использую play-games-plugin-for-unity для аутентификации моей игры Unity (Android) с помощью Google Play Games и передачи кода аутентификации на мой сервер Python (Flask).

Хотя клиентский код работает хорошо, я получаю ошибку redirect_uri_mismatch при отправке запроса аутентификации с моего сервера (который я запускаю локально).


Я отладил код своего сервера и подтвердил, что:

  • Я правильно получаю код авторизации от клиента
  • Мой redirect_uri установлен на postmessage (значение по умолчанию установлено oauth2client)
  • Я попытался удалить «URI авторизованного перенаправления» (которые он создал по умолчанию, когда я добавил связанное веб-приложение в свою игру в игровой консоли Google Play).

Хотя это кажется распространенной проблемой, я не смог найти никаких примеров / ссылок, чтобы решить эту проблему при использовании play-games-plugin-for-unity. Насколько я могу судить, я, похоже, не отправляю redirect_uri s, но не могу сказать наверняка, не перестроив родной плагин для Android и не попытавшись отладить его. Я чувствую, что упускаю что-то простое здесь.

Вот мой код сервера:

from oauth2client import client

credentials = client.credentials_from_code(LINKED_WEB_APP_CLIENT_ID,
    LINKED_WEB_APP_CLIENT_SECRET, 
    ['https://www.googleapis.com/auth/games'], 
    server_auth_code)

1 Ответ

0 голосов
/ 30 апреля 2019

Просмотрев clientserverskeleton Пример Java, я обнаружил, что передача "" (пустая строка !!) в качестве redirect_uri работает:

from oauth2client import client

credentials = client.credentials_from_code(LINKED_WEB_APP_CLIENT_ID,
    LINKED_WEB_APP_CLIENT_SECRET, 
    ['https://www.googleapis.com/auth/games'], 
    server_auth_code,
    redirect_uri="")
...