2014-04-26 22 views
6

Wszystko,Google OAuth2 redirect_uri_mismatch Issue

Im otrzymuję błąd 400 redirect_url_mismatch na próbę uwierzytelnienia przez google. Używam Pythona-socal-auth poprzez aplikację django, aby osiągnąć ten proces.

Wszystko działa sprawnie, dopóki nie dojdę do ostatnich etapów procesu, w którym trafiłem na problem z przekierowaniem_zdrowienia.

W Google otrzymuję tę wiadomość.

"The redirect URI in the request: http://localhost:8000/something/complete/google-oauth2/ did not match a registered redirect URI"

`Request Details 
from_login=1 
scope=https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile 
response_type=code 
redirect_uri=http://localhost:8000/something/complete/google-oauth2/ 
state=qT1RLLMa72F8NxFFubHwCVe3GgLDNcgZ 
as=-55f896f3314b21af 
pli=1 
client_id=160177117398 
authuser=0 
hl=en` 

wliczony Poniżej znajduje się zrzut ekranu z ID Klienta przekierowują URI.

enter image description here

Co robię źle?

Dzięki!

Odpowiedz

2

Upewnij się, że dodane społeczno-auth w urls.py jak

url('', include('social.apps.django_app.urls', namespace='social')), 

i console.developers.google.com ustawić Authorized redirect URIs do http://localhost:8000/something/complete/google-oauth2/

+0

dziękuję, ostatni/na 'google-oauth2 /' był tym, czego mi brakowało. –

1

Należy zwrócić uwagę jest to, że URL przekierowania powinien być dokładnie taki sam do ostatniego ukośnika. W moim przypadku było to jak http://localhot:8000/something/complete/google-oauth2 To powinno być
http://localhot:8000/something/complete/google-oauth2 Doprowadziło to do przekierowania_rozmiaru_przekierowania.

Określ także http: i https: w konsoli dla adresu URL przekierowania, ponieważ przekierowanie adresu URL wygenerowane przez serwis społecznościowy nadal wysyła http bez względu na ustawienie ssl na serwerze.

Powiązane problemy