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

测试Google DialogFlow交易API节点时遇404错误求助

解决运行order-update.js时的404 NOT_FOUND错误

当你在Actions on Google Transactions Sample里执行node order-update.js遇到404错误时,大概率是请求的订单实体不存在或者配置环节出了问题,下面是几个常见的排查和解决方向:

1. 确认订单ID的有效性

  • 首先要确保脚本里用的订单ID是当前项目下真实存在且未被删除/归档的订单。如果是刚测试创建的订单,检查复制订单ID时有没有拼写错误(比如多了空格、少了字符)。
  • 可以先通过订单查询脚本(Sample里对应的查询工具)或者Google Cloud控制台的订单管理页面,验证这个订单ID是否能被正常找到。如果查询也返回404,那肯定是订单ID的问题,重新生成有效的订单ID再尝试。

2. 核对项目配置与认证信息

  • 检查脚本依赖的环境变量(比如GOOGLE_APPLICATION_CREDENTIALS)是否指向了正确的服务账号密钥文件,而且这个密钥所属的项目要和你测试的DialogFlow/Actions项目完全一致。
  • 确认脚本里有没有硬编码错误的项目ID,如果有的话,替换成你实际使用的项目ID。错误的项目ID会导致请求发到完全无关的项目,自然找不到目标订单。

3. 检查服务账号的权限

  • 虽然404通常是实体不存在,但有时候权限不足也会被伪装成这个错误。确保你的服务账号拥有actions.orderManagement.orders.update和actions.orderManagement.orders.get这两个IAM权限。
  • 可以在Google Cloud控制台的IAM页面找到对应的服务账号,查看它的权限列表,若缺少相关权限,添加对应的角色(比如Order Management Editor角色)即可。

4. 验证订单当前状态

  • 如果订单已经处于已完成、已取消或者已退款等终端状态,可能无法再执行更新操作。先确认订单的当前状态,只有处于可更新状态(比如CREATED、CONFIRMED)的订单才能被修改。

按照上面的步骤逐一排查,应该能快速定位到问题所在。

内容的提问来源于stack exchange,提问作者josué joss

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 06:29:22