2017-10-04 1 views
0

J'ai une application Android avec un serveur python. J'ai besoin du serveur pour avoir accès aux e-mails des utilisateurs en permanence, donc je suis ce guide:erreur redirect_uri_mismatch lors de l'activation de l'accès côté serveur à Google API

https://developers.google.com/identity/sign-in/android/offline-access

def google_api(auth_token): 
    # If this request does not have X-Requested-With header, this could be a CSRF 
    #if not request.headers.get('X-Requested-With'): 
     #abort(403) 

    # Set path to the Web application client_secret_*.json file you downloaded from the 
    # Google API Console: https://console.developers.google.com/apis/credentials 
    CLIENT_SECRET_FILE = 'secret.json' 

    # Exchange auth code for access token, refresh token, and ID token 
    credentials = client.credentials_from_clientsecrets_and_code(
     CLIENT_SECRET_FILE, 
     ['https://www.googleapis.com/auth/gmail.readonly', 'profile', 'email'], 
     auth_token) 

    print credentials 
    return credentials.id_token 

J'obtiens l'erreur suivante: FlowExchangeError: redirect_uri_mismatch

Voici le secret.json:

{"web":{"client_id":"REDACTED", 
"project_id":"REDACTED", 
"auth_uri":"https://accounts.google.com/o/oauth2/auth", 
"token_uri":"https://accounts.google.com/o/oauth2/token", 
"auth_provider_x509_cert_url":"https://www.googleapis.com/oauth2/v1/certs","client_secret":"REDACTED", 
"redirect_uris":["http://localhost:8080/"], 
"javascript_origins":["http://localhost:8080"]}} 

J'ai également essayé d'utiliser http://my_actual_domain.com:5000/ pour le redirect_ur est et il renvoie toujours la même erreur.

Je ne comprends pas ce que redirect_uris est supposé être ou vouloir dire? Il n'est pas mentionné dans le guide que je lierai en haut

Répondre

0

La redirection d'uri est quelque chose que vous lui donnez lorsque vous avez créé l'ID de client OAuth. Celui que vous avez utilisé dans l'application devrait correspondre à celui que vous avez donné lors de la demande de l'ID client.

Veuillez vous assurer que ceci a été correctement configuré.

enter image description here