Google Cloud Endpoints Cliente Android: error de autenticación
He configurado un proyecto de motor de aplicación de Python con puntos finales de Cloud. Tengo un problema donde cuando pruebo localmente, la autenticación con los puntos finales falla pero parece funcionar bien cuando implemento en el motor de la aplicación.
Esto es lo que he hecho
- Ejecución del servidor Odoo (OpenERP) en Android
- Enumerar todos los elementos en enlaces Selenium Python para Appium
- Cómo guardar la URL actual en Android Kivy Application
- Kivy y buildozer "Permiso denegado"
- Conexión entre Python Server y la aplicación Android
- Se ha generado un ID de cliente de Android con el depurador de claves
- Generado un ID de cliente web
- Decorado mis puntos finales api con allowed_clients_id = [API_EXPLORER_ID, ANDROID_CLIENT_ID, WEB_CLIENT_ID] y audiencias = [WEB_CLIENT_ID]
- En mi aplicación de Android, creo un GoogleAccountCredential con la audiencia que es "server: client_id:" + WEB_CLIENT_ID
Lo he implementado y la autenticación funciona bien. Cuando la implemento localmente, la autenticación funciona bien desde el explorador de API con OAuth habilitado. Pero cuando hago una llamada desde mi aplicación para Android, obtengo esto en el registro:
ERROR 2014-01-22 23:29:07,006 users_id_token.py:367] Token info endpoint returned status 400: Invalid Value
No estoy seguro de lo que estoy perdiendo.
- Error de compilación de Android con buildozer
- Java vs Python HMAC-SHA256 no coinciden
- Implementación de un esquema de autenticación para aplicaciones móviles con Tastypie
- Python Interpreter en Android
- ¿Hay una manera de iniciar el emulador de Android en Travis CI construir?
- Unicast UDP de Android funciona, pero la difusión no
- Ejecución de systrace da "preexec_fn no es compatible con Windows" error
- Error de GLS: INVALID_AUDIENCE en los puntos finales de la nube de google
Acabo de arreglar lo que parece el mismo problema, causado por no tener pycrypto instalado localmente.
Intente instalar, por ejemplo, con pip:
pip install pycrypto
El módulo users_id_token.py en el SDK de App Engine parece abandonar la validación del id_token si pycrypto no está instalado. A continuación, intenta validar el id_token como un auth_token que falla dando por resultado el error que usted ve.
- Enviar datos al servidor desde el dispositivo Android cuando la aplicación llega al fondo
- ¿Cómo obtener sólo la ubicación de GPS con sencha touch?