Django Social Auth(谷歌OAuth 2)-即使在;“允许访问”;点击
我成功地使用Django Social Auth登录Facebook用户。我正在尝试实现GoogleOAuth2。我已经采取了我所知道的所有步骤来集成它,但是我在/complete/google-oauth2/上得到了一个Django Social Auth(谷歌OAuth 2)-即使在;“允许访问”;点击,django,authentication,django-socialauth,Django,Authentication,Django Socialauth,我成功地使用Django Social Auth登录Facebook用户。我正在尝试实现GoogleOAuth2。我已经采取了我所知道的所有步骤来集成它,但是我在/complete/google-oauth2/上得到了一个authcanced异常,即使我单击允许访问。下面是我为整合它所做的: 转到GoogleAPI控制台,注册我的应用程序并获取我的客户ID和客户机密 我添加了正确的返回urlhttp://mysite/complete/google-oauth2,在此之前,我从谷歌获得了“未经
authcanced异常,即使我单击允许访问
。下面是我为整合它所做的:
- 转到GoogleAPI控制台,注册我的应用程序并获取我的客户ID和客户机密
- 我添加了正确的返回url
http://mysite/complete/google-oauth2
,在此之前,我从谷歌获得了“未经授权的重定向url”
- 在my settings.py中,我有
GOOGLE_OAUTH2_CLIENT_ID = '*****'
GOOGLE_OAUTH2_CLIENT_SECRET = '*****'
AUTHENTICATION_BACKENDS = (
'social_auth.backends.google.GoogleOAuth2Backend',
'social_auth.backends.facebook.FacebookBackend',
'django.contrib.auth.backends.ModelBackend',
)
- 我想我有其他相关设置的权利,因为Facebook登录工作,我能够显示窗口,在谷歌授权窗口中查看我的应用程序名称,等等
我做错了什么?如何修复/调试AuthCancelled异常?这个问题似乎是由一个奇怪的Google行为引起的:当我最初创建客户端ID时,Google给了我这个客户端ID:193271111225.apps.googleusercontent.com
。在与库作者交谈后,他告诉我他的ID要长得多,所以我用完全相同的设置创建了一个新的客户端ID。生成的新ID是193271111225-cvltnldi4h5lmo784v2ir451b3rij7e.apps.googleusercontent.com
,使用它,它工作了。这两个ID在控制台中看起来相同,但只有后者起作用。这个问题似乎是由一个奇怪的谷歌行为引起的:当我最初创建我的客户ID时,谷歌给了我这个客户ID:193271111225.apps.googleusercontent.com
。在与库作者交谈后,他告诉我他的ID要长得多,所以我用完全相同的设置创建了一个新的客户端ID。生成的新ID是193271111225-cvltnldi4h5lmo784v2ir451b3rij7e.apps.googleusercontent.com
,使用它,它工作了。这两个ID在控制台中看起来相同,但只有后者有效。使用中间件正确处理社交身份验证异常
MIDDLEWARE_CLASSES = (
...,
'social_auth.middleware.SocialAuthExceptionMiddleware'
)
使用中间件正确处理社交身份验证异常
MIDDLEWARE_CLASSES = (
...,
'social_auth.middleware.SocialAuthExceptionMiddleware'
)