2016-06-01 14 views
0

Es tut mir leid, diese Frage wurde oft gestellt, und ich habe mehrere Antworten und Kreuz mit ihnen überprüft, aber kein Glück gesehen. Hier ist, was die Prozedur Iredirect_uri Mismatch für Google OAUTH

1 gefolgt sind) Went to google Entwicklerkonsole
2) erstellen geklickt Anmeldeinformationen
3) Oauth Client-ID
4) Web appplication
In den authorsied umleiten URIs gab ich https://www.example.com/home

Ich habe das Pop-up von Client-ID, Client-Geheimnis. Hier habe ich sie

Spree::AuthenticationMethod.where(environment: Rails.env, provider: 'google_oauth2').first_or_create do |auth_method| 
    auth_method.api_key = ENV['GOOGLE_ID'] 
    auth_method.api_secret = ENV['GOOGLE_SECRET'] 
    auth_method.active = true 
    end 

Jetzt hinzugefügt Ich rufe die Google oauth den folgenden Code verwenden

<a href="https://www.example.com/users/auth/google_oauth2"> 
    <div> 
     Sign up with google 
    </div> 
</a> 

Edit:

Dies ist der Fehler, den ich

The redirect URI in the request, https://www.example.com/users/auth/google_oauth2/callback, does not match the ones authorized for the OAuth client. Visit https://console.developers.google.com/apis/credentials/oauthclient/490969266456-ki43pu8ejosstkuv01jadmmmt1o33the.apps.googleusercontent.com?project=490969266456 to update the authorized redirect URIs. 
bin immer

Hier ist die Anfrage

Request Details 
access_type=offline 
scope=email 
response_type=code 
redirect_uri=https://www.example.com/users/auth/google_oauth2/callback 
state=31ad247324b285fdf6102e931707e041770a85990050eb40 
client_id=490969266456-ki43pu8ejosstkuv01jadmmmt1o33the.apps.googleuserc 

Nachdem ich die obige Nachricht sah, ging ich in die Konsole und aktualisierte die Weiterleitung uri zu https://www.example.com/users/auth/google_oauth2/callback. Trotzdem bekomme ich denselben Fehler.

+0

Erhalten Sie einen Fehler? –

+0

Ja Überschrift ist der Fehler Ich bekomme – gates

+0

Soll ich die Client-ID in der URL senden? – gates

Antwort

2

Also das Problem, das passiert ist, habe ich ein Konto ohne ordnungsgemäße Umleitung Uri erstellt. Ich hatte das hier in

Spree::AuthenticationMethod.where(environment: Rails.env, provider: 'google_oauth2').first_or_create do |auth_method| 
    auth_method.api_key = ENV['GOOGLE_ID'] 
    auth_method.api_secret = ENV['GOOGLE_SECRET'] 
    auth_method.active = true 
    end 

Später, als ich kennen gelernt habe, hatte ich die richtige Rückruf-URL in der Konsole zu bringen, habe ich eine neue Berechtigungsnachweise erstellt. Und sie in der .env-Datei aktualisiert.

Aber es schien nicht zu aktualisieren sie in Spree :: AuthenticationMethod.all .. die vorherigen Schlüssel erschienen. Also habe ich diese Aufzeichnungen gelöscht und die rails s gemacht.

Die neuen Schlüssel, wurden in Schienen Konsole angezeigt.

Ein weiterer Punkt ist,

wenn Sie dieses href anfordern = „https://www.example.com/users/auth/google_oauth2“> Ihr Rückruf uri in der Google-Konsole sein sollte dies

https://www.example.com/users/auth/google_oauth2/callback

+0

Schöne Erklärung. –