无法在Google智能助理教程中找到Firebase webhook的功能网址

时间:2017-09-06 20:29:17

标签: firebase google-cloud-functions dialogflow actions-on-google

我一直在" Facts about You: Build a conversational app for the Google Assistant"上做Codelabs教程。但遇到了问题。

本教程的第4页致力于使用Cloud Functions for Firebase来设置webhook以提供自定义响应。该页面上的步骤7显示"部署云功能后,功能URL将打印在Firebase CLI日志中。此URL与项目控制台URL分开。“

我的问题是我只看到控制台网址。我没有在任何地方看到功能URL。

任何人都可以澄清我应该在哪里找到功能URL吗?如果不知道webhoook的终端URL,我的应用程序将无法正常运行。

谢谢!

6 个答案:

答案 0 :(得分:5)

我注意到您在问题中包含了#actions-on-google标记。我想Firebase可能不会打印dialogflowFirebaseFulfillment操作的网址。但是,您也可以查看您的功能' Firebase控制台中的网址。

如果您还不知道,可以从部署中获取控制台的URL。部署控制台后,URL将在输出中打印,如下所示。注意控制台URL不会从部署更改为部署,因此您也可以将其添加为书签。

Project Console: https://console.firebase.google.com/project/goodmorningroutine-ac4b1/overview

在Firebase控制台内,转到左侧的“功能”。该页面将显示一个函数列表,每个函数都有其请求URL,如下所示。

enter image description here

答案 1 :(得分:4)

当codelab指示您运行firebase deploy --only functions时,它将输出您创建的HTTP函数的URL。它将是输出的最后一行,看起来像这样:

Function URL (foo): https://us-central1-my-codelab.cloudfunctions.net/foo

复制该网址 - 它是您的webhook端点。

答案 2 :(得分:1)

我遇到了同样的问题。

here部署文件时,它可以正常工作。

在与我自己的文件进行比较后,我意识到在失败的情况下错过了两行:

const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

答案 3 :(得分:1)

我遇到了同样的问题.....我刚刚在部署

之前保存了文件

这很容易,我希望它适合你

答案 4 :(得分:0)

根据google Firebase文档,您需要确保在 functions目录 index.js 文件中编写函数。 如果运行firebase deploy --only functions,CLI将查看该特定的索引文件夹。如果在functions目录中的index.js文件中未指定任何功能,则只会看到“ Deploy Complete”和控制台的URL

答案 5 :(得分:0)

保存index.js文件,然后再次运行“ Firebase deploy --only功能”。这对我有用,因此希望也能在您这一边起作用。