我正在实现谷歌身份验证到我的JavaScript web应用程序。我想使用下面描述的身份验证代码流。
我想做的是…
- 用户点击一个按钮,得到同意屏幕
- 他点击"允许",我得到授权码
- 我将授权码发送到我的rest后端,以便将授权码交换到
access_token
前2部分工作完美如预期,但我不能得到3。。我从后端调用https://www.googleapis.com/oauth2/v3/token
,发布code
, client_id
, client_secret
, redirect_uri
和grant_type
(authorization_code)。这工作得很好,我用fiddler(一个web调试工具)检查了一下。然而,我总是得到unauthorized_client
作为结果。
任何想法?
经过大量的测试和阅读,我终于得到了它。
- 即使我执行POST请求获得访问令牌在我的后端,我需要在参数传递(client_id, client_secret等…)与查询字符串不是身体。
- 我需要在两个请求中提供相同的redirect_uri(获取代码和获取access_token)
现在它工作得很好。