WSO2 ESB 如何从端点读取 XML 属性响应
WSO2 ESB how to read XML attribute response from the Endpoint
我已经创建了一个 API 调用和端点以及 return 一些响应。基于端点 return 的响应,我想检索 status
值并继续下一步。
这是我的api.xml
样子。
<api context="/sendSms" name="SendSmsApi" xmlns="http://ws.apache.org/ns/synapse">
<resource methods="GET" uri-template="/{username}/{password}">
<inSequence>
<property expression="get-property('MessageID')" name="msgID" scope="default" type="STRING"/>
<log level="custom">
<property expression="$trp:requestId" name="Request ID"/>
<property expression="get-property('msgID')" name="msgID"/>
</log>
<call>
<endpoint key="SmsLoginEP"/>
</call>
<property expression="what should i put here ?" name="response" scope="default" type="STRING"/>
<log level="custom">
<property expression="get-property('response')" name="Response"/>
</log>
<respond/>
</inSequence>
<outSequence>
<send/>
</outSequence>
<faultSequence/>
</resource>
这是我从端点
获得的XML
<rsp status="fail"><err returncode="-2" desc="username record not found."</err></rsp>
我的问题是如何获取属性 status
是失败还是通过并将其插入 属性 调解器,以便之后我可以执行 s 调解器。
您从终结点获得的 XML 格式不正确标记 err
未正确打开。如果假设它看起来像:
<rsp status="fail"><err returncode="-2" desc="username record not found."></err></rsp>
然后你可以使用:/rsp/@status
它将 return fail
as string
请参阅此处 Demo。
我已经创建了一个 API 调用和端点以及 return 一些响应。基于端点 return 的响应,我想检索 status
值并继续下一步。
这是我的api.xml
样子。
<api context="/sendSms" name="SendSmsApi" xmlns="http://ws.apache.org/ns/synapse">
<resource methods="GET" uri-template="/{username}/{password}">
<inSequence>
<property expression="get-property('MessageID')" name="msgID" scope="default" type="STRING"/>
<log level="custom">
<property expression="$trp:requestId" name="Request ID"/>
<property expression="get-property('msgID')" name="msgID"/>
</log>
<call>
<endpoint key="SmsLoginEP"/>
</call>
<property expression="what should i put here ?" name="response" scope="default" type="STRING"/>
<log level="custom">
<property expression="get-property('response')" name="Response"/>
</log>
<respond/>
</inSequence>
<outSequence>
<send/>
</outSequence>
<faultSequence/>
</resource>
这是我从端点
获得的XML<rsp status="fail"><err returncode="-2" desc="username record not found."</err></rsp>
我的问题是如何获取属性 status
是失败还是通过并将其插入 属性 调解器,以便之后我可以执行 s 调解器。
您从终结点获得的 XML 格式不正确标记 err
未正确打开。如果假设它看起来像:
<rsp status="fail"><err returncode="-2" desc="username record not found."></err></rsp>
然后你可以使用:/rsp/@status
它将 return fail
as string
请参阅此处 Demo。