如何获取WSO2 ESB中的Envelope内容?

时间:2017-11-06 03:38:02

标签: javascript wso2

这是我在系统日志中的信封有效负载:

Direction: request, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><jsonObject><schema><Id>A49E-D293-CB27-AA31</Id><name>John</name></schema></jsonObject></soapenv:Body></soapenv:Envelope>

如果我想获得&#34; Id&#34;内容,我该怎么做javascript?

2 个答案:

答案 0 :(得分:0)

你可以这样读。 (根据你的json请求改变如下)

 <log>
     <property name="location" expression="json-eval($.coordinates.location[0].name)"></property>
 </log>

参考:https://docs.wso2.com/display/ESB500/JSON+Support

答案 1 :(得分:0)

在您的情况下,解决方案是

<property name="Id" expression="json-eval($.schema.Id)"/>

如果你真的想使用javascript,这应该可行

<script description="Get ID" language="js"><![CDATA[
var json = mc.getPayloadJSON();
var Id = json.schema.Id;
]]></script>