Google cloud platform oAuth JWT导致无效参数错误(400)

Google cloud platform oAuth JWT导致无效参数错误(400),google-cloud-platform,oauth-2.0,google-oauth,actions-on-google,Google Cloud Platform,Oauth 2.0,Google Oauth,Actions On Google,我正在尝试使用oAuth2代码授权流在我的google操作上启用帐户链接 不幸的是,我的链接在最后一步失败了。我认为我没有将/token端点的结果正确地返回给google 在重定向到我的操作页面(/authorize worked fine)后,我可以在控制台中看到400错误的响应: 请求URL: 这是我发送回google for/token的正文(我猜这会导致上面的错误): 车身结构是否正确?我认为这是因为jwt令牌,但当我手动解码它时,一切看起来都很好 感谢您的帮助 多谢各位 不幸的是,我的

我正在尝试使用oAuth2代码授权流在我的google操作上启用帐户链接

不幸的是,我的链接在最后一步失败了。我认为我没有将/token端点的结果正确地返回给google

在重定向到我的操作页面(/authorize worked fine)后,我可以在控制台中看到400错误的响应:

请求URL:

这是我发送回google for/token的正文(我猜这会导致上面的错误):

车身结构是否正确?我认为这是因为jwt令牌,但当我手动解码它时,一切看起来都很好

感谢您的帮助

多谢各位

不幸的是,我的链接在最后一步失败了。我认为我没有将/token端点的结果正确地返回给google

请注意,您的访问/刷新令牌对Google是不透明的。您正在将这些凭证交给谷歌,以便在将来的请求中传回给您。这些令牌的含义以及如何确定它们的有效性取决于您的OAuth服务器实现

有关更多详细信息,请参阅

这是我发送回google以获取/token的主体

中的
scope
refresh\u token\u expires\u字段不是Google在您的令牌交换响应中期望的参数,因此这可能是
INVALID\u参数
错误的来源。对Google的基本令牌响应应该如下所示:

{
  "access_token":"jwt-token-here",
  "expires_in":"1602162256000",
  "token_type":"Bearer",
}
字段中的
expires\u指的是访问令牌,当Google应该使用刷新令牌请求新的访问令牌时

如果您想使刷新令牌过期或轮换,您也可以这样做。然而,你不能告诉谷歌什么时候刷新令牌会“过期”。要循环刷新令牌,您必须在下次Google请求新访问令牌时传回新令牌,例如:

{
  "access_token":"jwt-token-here",
  "expires_in":"1602162256000",
  "refresh_token":"updated-refresh-token-here",
  "token_type":"Bearer",
}

有关请求和响应中字段的更多详细信息,请参阅。

谢谢,expires_in参数确实存在问题。
{
  "access_token":"jwt-token-here",
  "expires_in":"1602162256000",
  "token_type":"Bearer",
}
{
  "access_token":"jwt-token-here",
  "expires_in":"1602162256000",
  "refresh_token":"updated-refresh-token-here",
  "token_type":"Bearer",
}