我不拥有的Google Assistant操作访问API

时间:2018-09-04 17:13:05

标签: api authentication oauth-2.0 actions-on-google google-home

我已经浏览了Account Linking的文档,但是我仍然不清楚如何使用我不支持Oauth2的API来构建动作的机制。

说,我想允许Ebay用户问“嘿Google,问Ebay,我的订单已经发货了吗?”。遇到这个问题,我需要通过API访问Ebay上的用户交易,并且无法控制Ebay OAuth2端点和参数的方式。

请告诉我您是否这样做或知道一个很好的例子。最终,我想从各种站点(某种混搭)调用API。

1 个答案:

答案 0 :(得分:1)

您需要分两个部分进行处理-在系统中为每个用户创建一个帐户,然后将您的帐户链接到其助手帐户。

您系统中的帐户将存储您需要从他们那里获得的凭据(通常是OAuth令牌),以代表他们访问服务的API。通常是通过让他们登录到您的网站并授权您通过OAuth跳舞来访问其他服务来实现的。

在第二部分中,角色略有颠倒。助理现在需要通过某种OAuth舞蹈获得用户的授权才能访问您的服务。这就是帐户链接的作用-它会为助手提供一个针对您的服务的OAuth令牌 ,以便它可以将其传递给您,从而您可以验证用户的身份。

一旦您知道用户是谁(通过助手),就可以访问他们在服务上的帐户,获取访问另一个服务(例如Ebay)上的帐户所需的身份验证令牌,然后执行这些操作。

在某些情况下,您可以验证没有帐户链接的用户。最简单的方法是要求用户使用Google登录登录(或以其他方式获得其Google帐户对您服务的授权),然后使用Google Sign In for Assistant来让助理验证您正在使用的Google帐户。如上所述,您可以在系统中查找此帐户,并获得其他服务的授权。