SAP Cloud Platform Integration 向外部端点发送Zip文件失败求助
SAP CPI HTTP协议发送Zip文件未抵达目标端排查方案
- 校验HTTP适配器配置
确认HTTP接收器适配器的「传输内容」设置为Payload,而非仅传输头参数。CPI跟踪日志中留存的是流程中间态payload,若适配器未配置传递实际载荷,会出现日志能下载文件但实际未发送的情况。 - 核对请求头配置正确性
- 确认
Content-Type头值为application/zip,若目标服务要求多部分表单传输,需额外配置multipart/form-data结构并指定文件字段名,不要单独传二进制流 - 检查
Authorization头格式:Bearer令牌必须带Bearer前缀,Basic认证必须带Basic前缀加合法Base64编码的账号密码拼接串,格式错误会触发目标端401拦截但部分服务不会返回明确报错
- 确认
- 核查HTTP调用响应状态
在CPI消息监控的调用明细中查看目标服务返回的HTTP状态码:- 415状态码:头信息或载荷格式不符合目标端要求,可直接对比Postman请求的全量头信息,把Postman自动生成的
Content-Length、Accept等必要头通过Content Modifier补充到CPI请求中 - 200状态码但文件未落地:说明目标端接收逻辑未匹配到你传的文件位置,绝大多数场景是目标端要求文件放在指定表单字段中,需把现有Zip payload封装为多部分表单结构后再发送
- 415状态码:头信息或载荷格式不符合目标端要求,可直接对比Postman请求的全量头信息,把Postman自动生成的
- 排查后续流程修改
确认Content Modifier之后没有其他步骤(比如第二个Content Modifier、消息映射等)清空或修改了原有Zip payload,中间态日志的文件内容不代表最终出站的载荷内容 - 报文对比验证
分别导出Postman发送成功的完整请求报文、CPI出站的完整请求报文,逐项对比头字段和载荷差异,即可快速定位配置偏差
内容的提问来源于stack exchange,提问作者Renato Vitor
相关产品推荐
相关产品推荐

