CPI-REST API的HTTP接收器适配器-JSON有效负载错误

2020-08-26 21:07发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好,社区专家 在执行对外部R...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


您好,社区专家

在执行对外部REST API的POST时寻求解决问题的建议。 有效负载很简单,并且为JSON格式。

我正在使用HTTP接收器适配器,并尝试了几种配置,例如POST方法和Dynamic方法(勾选了Send Body标志)。 所有尝试都会导致HTTP 403错误。 我可以在监视器中看到有效负载似乎已正确传递到了Receiver适配器。 例如,有效负载的提取看起来像这样:

{"面试":{"标题":" Test1","到期日期":" 2019-12-06T10:10:10Z",......}}

但是,接收方第3方系统指示其日志显示以下类型的有效载荷,并带有转义符:

{" {\ n \ interview \":{\ n \" title \":\" Test1 \",\ n \" due_date \":\" 2019-12-06T10:10:10Z \", \ n .....}}

但是,当在诸如Postman之类的测试工具(POST到第三方API URL)中测试相同的源JSON有效负载时,结果是成功响应(200 OK)。

似乎CPI HTTP接收器适配器似乎通过添加转义字符来转换有效负载。 如何避免这种行为,如何跟踪正在发生的事情? CPI消息监视器(启用了跟踪)没有提供足够的详细信息。 它显示了错误之前的有效负载,但未提供适配器发送给API的详细信息。

还值得注意的是,从CPI到同一外部REST API(不同的端点但同一主机)的GET请求成功。 显然,区别在于GET不包含有效载荷主体。

任何输入将不胜感激。

谢谢。

洛朗

4条回答
jovirus
2020-08-26 21:32

感谢巴拉。

是的,在Postman和CPI中使用完全相同的用户ID。 并且还使用相同的样本测试json负载作为输入。

接收方第三方告知我,他们的一端没有身份验证/授权问题。 但是,他们在日志中注意到的是,他们收到格式错误的邮件,如我的示例在我的第一封邮件中所示。 带有转义符(\ n)和双引号(\")的JSON消息。

正如我所说,我在CPI消息监视中看到JSON主体在HTTP接收器适配器之前的格式正确。 我看不到适配器发送的内容,但是接收器系统收到转义的消息。

不知道如何解决该问题,可能是问题所在。

此致

Laurent

一周热门 更多>