You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dialogflow Webhook调用失败求助:求正确的JSON回复格式

解决Dialogflow Webhook响应解析错误的问题

这个问题我之前碰到过,根源很明确——你用的是Dialogflow V1版本的Webhook响应格式,但当前你的Agent应该是V2或V3版本,两者的JSON结构差异很大,所以才会触发"Cannot find field: messages"的解析错误。

错误原因拆解

你发送的响应里用到的messages、speech、type都是V1时代的旧字段,而Dialogflow V2/V3的Webhook响应要求使用fulfillmentText(简单文本回复)或者fulfillmentMessages(复杂多类型消息)作为顶级字段,旧字段在新API里已经不被识别了。

正确的响应格式

根据你的需求,这里提供两种常用的正确格式:

1. 简单文本回复(最常用)

如果只需要返回一段文本,直接用fulfillmentText即可,结构非常简洁:

{
  "fulfillmentText": "Text response"
}

2. 多消息/复杂类型回复

如果需要返回多条文本、卡片、按钮等复杂消息,就用fulfillmentMessages数组,文本类型的示例如下:

{
  "fulfillmentMessages": [
    {
      "text": {
        "text": ["第一条文本回复", "第二条文本回复"]
      }
    }
  ]
}

如果要添加其他类型的消息(比如卡片、快速回复),只需要在fulfillmentMessages数组里添加对应结构的对象即可,比如卡片消息需要嵌套card字段,而非V1的type标识。

验证小技巧

修改响应格式后,你可以在Dialogflow的测试控制台里触发意图,查看Webhook的请求和响应日志,确认是否还存在解析错误。如果格式正确,你应该能正常收到机器人的回复。

内容的提问来源于stack exchange,提问作者Sunil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:18:46