我正在一个外部网站上工作,为facebook和谷歌登录集成django-allauth。脸书几乎是开箱即用。然而,在谷歌我得到了"社交网络登录失败"的错误。
以下是我所做的:
1.Google API控制台:web应用程序配置的客户端ID
Client ID: xxxxxxx.apps.googleusercontent.com
Email address: yyyyyyyy@developer.gserviceaccount.com
Client secret: xxx-yyy-zzz-111-222
Redirect URIs: http://learnbuzz.com/accounts/google/login/callback/
JavaScript origins: http://www.learnbuzz.com
2.在Sites 中创建learnbuzz.com网站
3.在社交应用程序中创建谷歌应用程序,使用客户端ID和来自谷歌API控制台的机密。
从文档和其他一些SO问题来看,似乎这就是所需要的。
但是,当我使用谷歌登录时,我会进入accounts.google.com
页面,它要求用户接受"应用程序共享基本用户信息和电子邮件"。在我接受后,它给了我一个"社交网络登录失败"这个网址:
http://learnbuzz.com/accounts/google/login/callback/?state=l1WdxOgr26bB&code=4/lGhX6Dum_FNnM3FE39TcULZb1UMX.0jX6biQfm3MfEnp6UAPFm0F0CIGMgQI
我缺少什么配置?
编辑:我不知道这是否重要,但浏览器需要很长时间才能抛出这个错误。
我试图访问http://learnbuzz.com/accounts/google/login/callback并且它请求http授权。它返回401状态代码。
可能您的浏览器已经登录,您无法看到此身份验证请求。
应该可以从匿名浏览器窗口访问此页面。在您消除了对授权的需要之后,它将起作用。