Google oauth2发现返回错误的token_endpoint

时间:2018-09-27 05:46:03

标签: google-oauth google-oauth2

这是Google oauth2发现网址。 https://accounts.google.com/.well-known/openid-configuration 在响应中,它看起来像这样

/public/index.html

此处https://developers.google.com/identity/protocols/OAuth2WebServer#exchange-authorization-code的google文档中的if(Object.prototype.toString.call(arrayList) === '[object Array]') { console.log('Array!'); } 说应该是{ "issuer": "https://accounts.google.com", "authorization_endpoint":"https://accounts.google.com/o/oauth2/v2/auth", "token_endpoint": "https://oauth2.googleapis.com/token", "userinfo_endpoint": "https://www.googleapis.com/oauth2/v3/userinfo", "revocation_endpoint": "https://oauth2.googleapis.com/revoke", "jwks_uri": "https://www.googleapis.com/oauth2/v3/certs", ...

也许最近更新了token_endpoint,但是当我使用https://www.googleapis.com/oauth2/v4/tokentoken_endpoint交换https://oauth2.googleapis.com/token时,会收到错误响应。

token

如果我使用code做同样的事情,一切都很好。

{ "error": { "code": 400, "message": "Request contains an invalid argument.", "status": "INVALID_ARGUMENT" } } 中有什么变化吗?谢谢!

1 个答案:

答案 0 :(得分:1)

OAuth端点在过去五年中已多次更新。我通常会按照发现文档中的内容进行操作,但是您的示例表明,这并不总是始终是最好的方法。

我从未听说过Google关闭旧的端点,我建议您使用可行的端点。附带说明,我将与Google联系,以查看是否可以就一个呼叫为什么起作用而另一个没有起作用的原因获得一些反馈。