在grantType = authorization_code请求之后,Google代理授权流程不会继续

时间:2017-08-04 08:46:31

标签: actions-on-google api-ai

我正在开发API AI代理,并尝试实现帐户链接功能。 oauth2-codeflow上的文档非常有用,我可以创建我的oauth流程并在Google playground中对其进行测试。这一切都很好,直到这里。

但是当我试图在网络模拟器中测试它时,我一直得到“看起来你的代理帐户还没有链接”。我已经按照调试URL进行了登录和授权步骤。

根据此SO Question:我应该期望将浏览器重定向到https://www.google.com/?result_code=SUCCESS&result_message=Accounts+now+linked,但我的浏览器始终会重定向到https://www.google.co.in/?gws_rd=cr&ei=QDOEWfCAPMHA0gSUvJj4Ag,而在代理中我仍然会{{1}消息。

我可以看到Google可以使用grantType:authorization_code调用我的令牌端点,我的服务响应如下所示:

accounts not linked

我的服务回复是:

POST for /myendpoint/tokens has begun for: grantType:authorization_code  clientId:google-clientid...8

我已经完成了SO Question中的建议,但我的回复中没有其他参数。它简单明了

我通过nodejs应用程序发送上述响应,代码如下:

{
  "token_type":"bearer",
  "access_token":"ab092868.....e804bcac",
  "refresh_token":"e11e6d3054883...b30",
  "expires_in":3600
}

我现在真的很震惊,无法找到出路!请帮助。

2 个答案:

答案 0 :(得分:2)

如通过电子邮件所述,您似乎没有重定向到与登录流程中提供给授权端点的redirect_uri参数相同的URL。我将调查改进有关此错误的消息传递。

答案 1 :(得分:2)

我被重定向到了同样的gws_rd = cr& ei url,这是因为我们不在美国开发。试图通过VPN连接西雅图,然后使用result_code = SUCCESS工作并重定向到google.com主页。我认为Google在这个过程中的某个地方会受到阻碍。