使用python-social-auth
时,我在接受来自谷歌的访问后收到一条403: Forbiden
错误消息
编辑:我最近(2017)遇到了同样的错误,但在一个新的消息下:401 Client Error: Unauthorized for url: https://accounts.google.com/o/oauth2/token
发布于 2014-06-24 10:37:53
此答案已过时,因为3/7/19将弃用Google+ API
您需要在Google Developer Console (在APIs
下)上将Google+ API
添加到已启用的API列表中
注意:如果您想要查看真正的错误消息,请使用回溯来查看response
变量(response.text
)的内容。为此,我使用了python manage.py runserver_plus
(django-extensions
+ werkzeug )。
发布于 2014-11-05 05:52:23
也谢谢你。我正在使用这个python-social-auth tutorial by art and logic,但无法通过/complete/ Google -oauth2/中的403: HTTPError,直到启用上面的Google+ ,并等待几分钟,让谷歌启用它的。
此外,我必须将模板放在一个模板目录中,并在settings.py中设置TEMPLATE_DIRS = ('/path/to/psa_test/thirdauth/templates/',)
。
希望这能帮到一些人。总而言之,它花了大约6个小时才弄清楚。不算太糟,我很开心。
发布于 2016-02-16 00:40:34
对我来说,我使用的是完整URI作用域,Google从2014年9月1日起就不推荐使用这个作用域,在这里的python-social-auth文档中提到了这个作用域
http://psa.matiasaguirre.net/docs/backends/google.html#google-oauth2
谷歌从2014年9月1日起弃用了完整的url作用域,取而代之的是Google+
和最近引入的更短的作用域名称。但是python-social-auth已经在e3525187中引入了作用域的变化,这是在v0.1.24发布的。
但是,如果您出于任何原因不想启用uri API,并且希望继续使用完整的uri旧作用域,则需要按照同一链接中提到的步骤进行操作:
# Google OAuth2 (google-oauth2)
SOCIAL_AUTH_GOOGLE_OAUTH2_IGNORE_DEFAULT_SCOPE = True
SOCIAL_AUTH_GOOGLE_OAUTH2_SCOPE = [
'https://www.googleapis.com/auth/userinfo.email',
'https://www.googleapis.com/auth/userinfo.profile'
]
# Google+ SignIn (google-plus)
SOCIAL_AUTH_GOOGLE_PLUS_IGNORE_DEFAULT_SCOPE = True
SOCIAL_AUTH_GOOGLE_PLUS_SCOPE = [
'https://www.googleapis.com/auth/plus.login',
'https://www.googleapis.com/auth/userinfo.email',
'https://www.googleapis.com/auth/userinfo.profile'
]
SOCIAL_AUTH_GOOGLE_OAUTH2_USE_DEPRECATED_API = True
SOCIAL_AUTH_GOOGLE_PLUS_USE_DEPRECATED_API = True
这对我很有效,因为我不想在这一点上启用Google+应用程序接口。
https://stackoverflow.com/questions/24377506
复制相似问题