我的代理代码看起来像这样
<proxy xmlns="http://ws.apache.org/ns/synapse" name="test">
<target>
<inSequence><property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/></inSequence>
</target>
</proxy>
当我从soapUI点击xml时,我不期待回应。 从我的理解FORCE_SC_ACCEPTED属性强制202客户端的http响应,所以它在此属性设置为true时停止等待响应。 请问任何人都可以建议FORCE_SC_ACCEPTED属性如何运作?
答案 0 :(得分:0)
仅当您在序列中使用或介体时,才应用此参数。 在这种情况下,呼叫客户端将立即收到202,而无需等待响应。
<proxy xmlns="http://ws.apache.org/ns/synapse" name="test"><target>
<inSequence>
<property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/>
<!-- 202 response will directly be sent to caller -->
<call>
<endpoint>
<address uri="http://localhost:8280/anyapi">
</address>
</endpoint>
</call>
<!-- managing the response from the call, but <respond/> mediator cannot be used anymore, as already responded -->
</inSequence></target></proxy>
因此,在没有“调用”或“发送”调解器的示例中,您将获得200。您可以通过自己设置HTTP_SC(并删除正文)来更改此设置:
<property name="HTTP_SC" value="202" scope="axis2"/>
<property name="NO_ENTITY_BODY" value="true" scope="axis2" type="BOOLEAN"/>
<respond/>