我正在使用serviceCalloutPolicy来获取某些“xyz”api的响应。 “xyz”api返回的响应是文本数据,如“abnfhjdkdhrju784hhkfjhbbhg21g3u2u9fdjkfnfddsnrijirry3784yewrgshbsdjbcjsvnvksdnv”,它既不是json也不是xml。那么如何将这些数据提取到变量中呢。我想在另一个api调用中将此数据用作标头。
您可以使用“提取变量策略”获取响应值。
将其放在您的服务标注政策之后。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ExtractVariables async="false" continueOnError="false" enabled="true" name="EVTIB-ExtractValueFromJC">
<DisplayName>EVTIB-ExtractValueFromJC"</DisplayName>
<IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
<Source clearPayload="false">yourJavaCalloutReponseName</Source>
<VariablePrefix>resp.data</VariablePrefix>
<JSONPayload>
<!--- Extract value from Json or XML , for example Json-->
<Variable name="apiRespData">
<JSONPath>$.data</JSONPath>
</Variable>
</JSONPayload>
</ExtractVariables>
然后使用变量名来引用该值。