From fd1d841703d095a769f4a0acd4a2580f6e1a5778 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mat=C3=ADas=20Aguirre?= Date: Wed, 27 Apr 2011 14:20:55 -0300 Subject: [PATCH] Use request.REQUEST because some providers use form URLs with GET parameters --- social_auth/backends/__init__.py | 4 +++- social_auth/views.py | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/social_auth/backends/__init__.py b/social_auth/backends/__init__.py index a415887..a9fe2fd 100644 --- a/social_auth/backends/__init__.py +++ b/social_auth/backends/__init__.py @@ -387,7 +387,9 @@ class BaseAuth(object): def __init__(self, request, redirect): self.request = request - self.data = request.POST if request.method == 'POST' else request.GET + # Use request because some auth providers use POST urls with needed + # GET parameters on it + self.data = request.REQUEST self.redirect = redirect def auth_url(self): diff --git a/social_auth/views.py b/social_auth/views.py index 521b085..6c446ff 100644 --- a/social_auth/views.py +++ b/social_auth/views.py @@ -94,9 +94,9 @@ def auth_process(request, backend, complete_url_name): backend = get_backend(backend, request, redirect) if not backend: return HttpResponseServerError('Incorrect authentication service') - data = request.REQUEST # Check and sanitize a user-defined GET/POST redirect_to field value. - redirect = sanitize_redirect(request.get_host(), data.get(REDIRECT_FIELD_NAME)) + redirect = sanitize_redirect(request.get_host(), + request.REQUEST.get(REDIRECT_FIELD_NAME)) request.session[REDIRECT_FIELD_NAME] = redirect or DEFAULT_REDIRECT if backend.uses_redirect: return HttpResponseRedirect(backend.auth_url()) -- 2.39.5