点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们,
我需要使用POST中的动态网址通过POST方法调用REST api。 无需传递有效载荷。
在URL中,参数值之一具有特殊字符'='。 PI REST Recevier通道未对该字符进行URL编码。 它是base64格式,因此" ="总是结尾。
这是用于调用REST api(POST)的最终URL,这是一个错误请求(请看最后的'=')
https://xxxxxx.com ?Action = xxxxx&SignatureMethod = xxxxx&SignatureVersion = 2&Timestamp = 2018-05 -03T20%3A23%3A06Z&Version = 2009-01-01&Signature = q4F03DLHlARtTPbPuMF9qM4vheAo%2BPo4V%2FhxVClqHm4 =
如果我在映射中执行url编码并将其传递到REST接收器通道,则适配器将在其上面进行自动编码,这是不正确的。 根据SAP文档,REST适配器会自动进行URL编码。
我应该执行以下任一操作
1。 在映射中执行url编码,并从自动编码停止REST适配器(停止自动编码)
2。 一种在通道级别上转义编码字符的解决方法。 我将在映射中将'='编码为%3D并将其传递给channel,但channel不应在其顶部编码'%'字符,这意味着它不应再次将%3D转换为%253D(%的实际编码为 %25)
请分享您对此的想法。
谢谢。
斯蒂芬·鲁维耶
斯蒂芬,你好
检查SAP Notes 2215187,它具有模块参数EncodeURL,根据您的要求将其设置为true/false。
致谢
Amith Bhumu
嘿阿米斯,
感谢您的回复。 哇! 这解决了我的问题。 :)
作为解决方案1,我在映射中进行了URL编码,并使用模块参数来停止自动编码。
谢谢
Stephen Rouvier
嗨,斯蒂芬,
尝试使用HTTP通道和动态URL参数,它应该可以工作。
温馨提示
夏曼·查哈尔
一周热门 更多>