我正在学习本教程,这是一个不错的开始,但省略了许多关于实现的细节。
组件typescript文件的第4行如下:
const dialogflowURL = 'https://us-central1-fireship-lessons.cloudfunctions.net/dialogflowGateway';
对于我的项目idyalebot-n9xq
,我认为准确的URL是:
https://dialogflow.googleapis.com/v2/projects/yalebot-n9xq/dialogflowGateway
然而,curl https://dialogflow.googleapis.com/v2/projects/yalebot-n9xq/dialogflowGateway
给出404响应:
<p>The requested URL <code>/v2/projects/yalebot-n9xq/dialogflowGateway</code> was not found on this server.
<ins>That’s all we know.</ins>
如果我的项目id是yalebot-n9xq,我应该使用什么URL
- 我已经启用了webhook以表示欢迎
- 如果我不使用angular并在本地提供
(curl http://localhost:5000/yalebot-n9xq/us-central1/dialogflowGateway
(,我会从dialogflow得到所需的响应 ng serve
产生http://localhost:4200/
,但访问该网站或/#
会产生错误"无法获取/",这就是为什么我认为我的错误是键入正确的URL
答案是Dialolow查找外部webhook。
在这个例子中,const dialogflowURL = 'https://YOUR-CLOUDFUNCTION/dialogflowGateway';
YOUR-CLOUDFUNCTION
指的是一个外部URL,可能是用ngrok
或lite-server
外部化的东西。
该示例适用于在DialogFlow履行选项卡下交叉列出的外部URL