尝试让 OAuth2 Google 登录正常工作,这是我的应用程序发出的原始请求:
Method: POST
URL: https://www.googleapis.com/oauth2/v3/token
标题:Content-Type: application/x-www-form-urlencoded
Values:
client_id
: XXX-0123456789abcdef0123456789abcdef.apps.googleusercontent.com
client_secret
: A1b2C3d4E5f6G7h8I9j0K1l2M
code
: 1/A1b2C3d4E5f6G7h8I9j0K1l2M3n4O5p6Q7r8S9t0U1v
grant_type
: authorization_code
redirect_uri
: http://localhost:5000/callback/google/
这是回应:
Status: 401 Unauthorized
Body:
{
"error": "invalid_client",
"error_description": "Unauthorized"
}
已验证这就是我的应用程序正在发出的确切请求/响应(使用 Flask 和 rauth 的 Python 应用程序),并已验证我可以使用 Postman 重现完全相同的请求/响应。
根据其他线程中的说明,我已在 Google API 控制台中完成了以下所有操作:
- 在“OAuth 同意屏幕”设置中,将“产品名称”设置为与“项目名称”不同的内容
- 同样在“OAuth 同意屏幕”设置中,仔细检查电子邮件是否已设置
- 启用 Google+ API
- 启用 Gmail API
- 重新创建客户端 ID/密码
- 仔细检查客户端 ID/秘密值中是否没有前导或尾随空格,我已从 API 控制台正确复制了它们
无论我做什么,仍然得到相同的回应"invalid_client": "Unauthorized"
.
对此提供帮助将不胜感激。我正在尝试在我的应用程序中设置 OAuth2 支持的“使用 X 登录”功能,已经让 Facebook 和 Twitter 正常工作,也想让 Google 正常工作,但如果我无法解决这个问题,那么我担心我必须放弃谷歌身份验证。