Google OAuth令牌请求返回“invalid_client”:“Unauthorized”

2024-05-16 20:42:15 发布

您现在位置:Python中文网/ 问答频道 /正文

试图让OAuth2 Google登录正常工作,这是我的应用程序发出的原始请求:

方法:POST

网址:https://www.googleapis.com/oauth2/v3/token

标题:Content-Type: application/x-www-form-urlencoded

价值观:

client_idXXX-0123456789abcdef0123456789abcdef.apps.googleusercontent.com

client_secretA1b2C3d4E5f6G7h8I9j0K1l2M

code1/A1b2C3d4E5f6G7h8I9j0K1l2M3n4O5p6Q7r8S9t0U1v

grant_typeauthorization_code

redirect_urihttp://localhost:5000/callback/google/

这就是答案:

状态:401 Unauthorized

正文:

{
    "error": "invalid_client",
    "error_description": "Unauthorized"
}

已验证这是我的应用程序正在发出的确切请求/响应(使用Flask和rauth的Python应用程序),并已验证我可以使用Postman复制完全相同的请求/响应。

根据其他线程中的说明,我在googleapi控制台中完成了以下所有操作:

  • 在“OAuth同意屏幕”设置中,将“产品名称”设置为与“项目名称”不同的名称
  • 同样在“OAuth同意屏幕”设置中,再次检查是否设置了电子邮件
  • 启用Google+API
  • 启用Gmail API
  • 重新创建客户端ID/机密
  • 仔细检查客户机ID/机密值中是否没有前导或尾随空格,我已经从API控制台正确地复制了它们

不管我做什么,仍然得到相同的"invalid_client": "Unauthorized"响应。

请帮忙。我正在尝试在我的应用程序中设置OAuth2支持的“使用X登录”功能,让Facebook和Twitter正常工作,也希望让Google正常工作,但如果我不能解决这个问题,恐怕我将不得不放弃Google auth。


Tags: comclientapiid应用程序屏幕wwwgoogle