自定义操作因意外原因失败

注意: 本文适用于 Web 服务数据操作集成。

当您在 Genesys Cloud 中测试自定义操作或在 Architect 中将其用于 Web 服务数据操作集成时,操作总是失败,但是 Web 服务在诸如 Postman 之类的 REST API 客户端中使用相同的输入。

默认情况下,Genesys Cloud 将操作请求和响应中的数据编码为 传输编码: 大块。 不支持 传输编码的 Web 服务: 即使正文是有效的 JSON,分块也会 返回不正确的错误,例如 “无效的 JSON”。

对于不支持 传输编码的 Web 服务: chunked,将 传输编码设置 在请求中 缓冲。 如果将 Transfer-Encoding 设置缓冲,则 Genesys Cloud 会在幕后包含一个 C ontent-Length 标头,并在单个请求或响应中发送所有数据。 

您可以使用 Simple 或 JSON 输入法修改请求中的标头。

  1. 单击 添加 标题
  2. 输入 传输编码 并在文本框 中进行 缓冲。

操作请求中标头的简单输入法

添加 传输编码: 缓冲 到 JSON。

{
  "requestUrlTemplate": "https://www.example.com/health/check/services/${input.service}",
  "requestType": "GET",
  "headers": {
    "Transfer-Encoding": "buffered"
  },
  "requestTemplate": "${input.rawRequest}"
}

有关更多信息,请参阅 测试数据操作 和向自定义操作 添加配置

有关集成的详细信息,请参阅 关于 Web 服务数据操作集成