这是实际查询:
?param1=xxx¶m2=yyy&zzz
param2 取 yyy&zzz 值
现在我需要替换yyy&zzz
为yyy%26zzz
. 但不要在查询中用 %26 替换第一个 &。如何使用 urlrewrite 在 wso2 esb 中实现这一点?
这是实际查询:
?param1=xxx¶m2=yyy&zzz
param2 取 yyy&zzz 值
现在我需要替换yyy&zzz
为yyy%26zzz
. 但不要在查询中用 %26 替换第一个 &。如何使用 urlrewrite 在 wso2 esb 中实现这一点?
您可以使用WSO2 ESB 中的脚本调解器对 url 进行此更改。例如,以下脚本中介配置将获取soap标头的“To”属性的url并进行您想要的替换。
<script language="js">var url = mc.getTo().toString();
var newURL = url.replace("yyy&zzz","yyy%26zzz");
mc.setTo(newURL);</script>
同样,您可以在消息上下文中获取任何 url 并对其进行转换。
您只需使用 xpath 函数 fn:replace(index,index) 替换 url