如何使用 Node.js、Firebase 和 Swift 开发集成 Google 主页与登录的应用程序

How to develop an app that integrates Google Home with Login using Node.js, Firebase and Swift

我一直在制作 Google 家庭应用,但现在我想制作连接到 Firebase 服务器和 DialogFlow 的应用 API。如何将用户身份验证集成到 ios 应用程序中,以识别正在使用 Google Home 且处于该登录状态的用户?

例如,如果我制作了一个餐厅订餐应用程序,我希望任何用户都可以通过 Google 主页发出请求,并且用户可以在 ios 上查看 his/her 订购历史记录应用

用户通过应用程序登录,然后 google home 如何将该用户检测为已登录用户?我一直在寻找如何实现这一点,但没有成功。

您需要为 Google 上的操作实施 account linking。这将需要您需要构建的两个服务器端组件:

  1. 您需要创建一个 OAuth 服务器,允许用户对您的服务进行身份验证(并使用 Firebase 身份验证作为其中的一个组件)并授权 Google 助手访问您的服务。它通过生成交给助手的令牌来实现这一点。

  2. 您的 Dialogflow fulfillment webhook 会将此令牌作为对话的一部分传递给它。它使用此令牌来确定哪个用户正在发出请求并确认它是有效的。

有可用的 OAuth 服务与 Google 的身份验证一起使用,您应该能够在此处适应这些身份验证,或者您可以使用 Firebase 托管和 Firebase 云功能编写自己的服务。 Dialogflow webhook 当然可以使用 Firebase Cloud Functions 来完成。