c# 中的一个非常简单的 dialgoue 流实现 webhook 无法正常工作

A Very simple dialgoue flow fulfillment webhook in c# not working

我是网络服务的新手,我基本上是想在 C# 中制作一个 webhook 并将其托管在 azure 上,这将是 google 助手的对话流实现的终点。我搜索了很多,发现 google 助手 - dialogflow 期望的 JSON 响应,并以这种方式进行了响应。 link 如下所示。

http://sprotsapicoretest20180525012122.azurewebsites.net/api/values

如果你点击 GET 你只会得到一个 "it is working test message." 但如果你从 postman 那里点击 post 你会得到一个正确的 JSON.

然而,即使在 POSTMAN 中收到响应,在 dialogflow 中实际尝试时它也不起作用。

我无计可施,无法弄清楚为什么即使 POST 在 POSTMAN 中测试时工作正常,它仍然无法正常工作。

任何帮助将不胜感激。

您不知道 post 错误是什么,所以有许多可能的问题原因。

您的情况中最有可能出现的两个问题是

  1. 您没有使用具有有效 SSL 证书的 HTTPS 端点。

  2. JSON 以 v1 格式返回,而您的 Dialogflow 项目使用的是 v2。

如果 Dialogflow 发回您在 Intent 中设置的响应,而不是您从 webhook 发回的响应,则通常来自以下之一:

  1. 您实际上并没有调用 webhook。确保 "Enable webhook call for this intent" 已打开。

  2. 您的 webhook 没有返回任何内容,或者返回的内容格式不正确。 (同样,您可能从 C# 代码返回格式为 JSON 的 Dialogflow v2,但您的 Dialogflow 项目设置为 v1。)