Ahora trato de configurar python-social-app
En el inicio de sesión de Facebook después de la redirección del nombre de usuario / contraseña a la página de error, no sé por qué sucedió esto …
En mi configuración, tengo 'social.backends.facebook.FacebookOAuth2'
y configuro correctamente SOCIAL_AUTH_FACEBOOK_KEY
y Secreto, ¿de verdad, dónde buscar el error?
Rastrear
Environment: Request Method: GET Request URL: http://website.com:8000/complete/facebook/?redirect_state=IuQDEiyX2bbS8Uhk7MR3hpRFLNZlW2Y5&code=AQDH5kqBibfy9bi21M9tTieujRAqvJVYdAb2UPFvfH6DVXoCWrrtamRA99Ze5-6cC6qHPiNq-a3XbGh2Gg4pbdFfM4OTpCEpWkPID6SZrHfAoEan8Q68cV17LDgsryX_M45QoXd0knpbE0x-QwAPwdoFmKQGHLw7xomCHeN5pCtrWhtoYQIrsFE1UQZZaxt4qtLzAmfmCRjDO7Et_S75fngLiomM0PfevTChLbHJHMYaqy6DBkgGZqZK-bXrqLaNFnBEoZ3M956DwCg4ZtTnvxulR4sXH9ZV3IoxVhL0JxMVsGnT2H_0wdKujIDPKcdPKZc&state=IuQDEiyX2bbS8Uhk7MR3hpRFLNZlW2Y5 Django Version: 1.8.3 Python Version: 2.7.6 Installed Applications: ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'frontend', 'social.apps.django_app.default') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware') Traceback: File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response 132. response = wrapped_callback(request, *callback_args, **callback_kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/django/views/decorators/cache.py" in _wrapped_view_func 57. response = view_func(request, *args, **kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/django/views/decorators/csrf.py" in wrapped_view 58. return view_func(*args, **kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/social/apps/django_app/utils.py" in wrapper 51. return func(request, backend, *args, **kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/social/apps/django_app/views.py" in complete 28. redirect_name=REDIRECT_FIELD_NAME, *args, **kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/social/actions.py" in do_complete 43. user = backend.complete(user=user, *args, **kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/social/backends/base.py" in complete 41. return self.auth_complete(*args, **kwargs) File "/Users/simon/Freelancer/env/lib/python2.7/site-packages/social/utils.py" in wrapper 232. raise AuthCanceled(args[0]) Exception Type: AuthCanceled at /complete/facebook/ Exception Value: Authentication process canceled
Tuve exactamente el mismo problema con Facebook y Google. He estado intentando esto desde ayer. Finalmente está funcionando … He enumerado mi configuración de trabajo a continuación, tal vez ayude …
Una observación me parece que, en mi caso, los valores href en mi plantilla de inicio de sesión tuvieron algo que ver con el problema.
Espero que esto ayude
SETTINGS.PY SOCIAL_AUTH_GOOGLE_OAUTH2_KEY='****************.apps.googleusercontent.com' SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET ='**************' SOCIAL_AUTH_RAISE_EXCEPTIONS = False SOCIAL_AUTH_FACEBOOK_KEY = '************' # Facebook App ID SOCIAL_AUTH_FACEBOOK_SECRET = '*********************' # Facebook App Secret
INSTALLED_APPS
'social.apps.django_app.default'
PLANTILLAS
'context_processors': social.apps.django_app.context_processors.backends', 'social.apps.django_app.context_processors.login_redirect',
URLS.PY
from django.conf import settings urlpatterns = [ url('', include('django.contrib.auth.urls', namespace='auth')), url('', include('social.apps.django_app.urls', namespace='social')),
FINALMENTE EL LOGIN. PLANTILLA DE HTML, parecía haber un problema con origianl href”s
ORIGINAL HREF fue:
Login with Facebook
Esto fue cambiado a
Login with Facebook
también el mismo cambio hecho a href para google …..
EN LA CONSOLA DE DESARROLLADORES DE FACBOOK
AJUSTES BÁSICOS
APP DOMINIOS = mysite.com (también cambió el archivo / etc / hosts para asignar mysite.com y no localhost a 127.0.0.1)
site url = “example.com:8000/”
SOLAMENTE LA CONFIGURACIÓN AVANZADA “Permitir el acceso de API a la configuración de la aplicación” y “Recostackr el identificador de publicidad de Apple (IDFA) con eventos de la aplicación” están configurados en SÍ
todos los demás campos se establecen en no o en blanco con la excepción del campo del token del cliente
LOS AJUSTES DE GOOGLE API SON LOS SIGUIENTES
“Orígenes de JavaScript autorizados” se deja en blanco
Los “URI de redireccionamiento autorizados” están configurados en http://example.com:8000/complete/google-oauth2/ (ORIGINALMENTE ESTABA USANDO http://example.com:8000/social-auth/complete/google-oauth2/ )
EN LA “Pantalla de Consentimiento de Oauth”
Se establece “dirección de correo electrónico”
Se establece “Nombre del producto mostrado a los usuarios”
TODOS los otros campos quedan en la configuración predeterminada
Tuve el mismo problema durante mucho tiempo. Después de pasar mucho tiempo, me di cuenta del problema. Por alguna razón, el documento de social-app-django había especificado la versión actual de la API de Facebook como 2.9
(¿razones de seguridad?). La versión actual es 2.8
. Por lo tanto, simplemente cámbielo a 2.8
o elimínelo.
SOCIAL_AUTH_FACEBOOK_API_VERSION = '2.8'
Esta fue la razón, mi autenticación fue cancelada. Espero que esto ayude !