Как работает свойство FORCE_SC_ACCEPTED?

Мой прокси код выглядит так

<proxy xmlns="http://ws.apache.org/ns/synapse" name="test">
 <target>
   <inSequence><property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/></inSequence>
 </target>
</proxy>

когда я нажимаю xml от soapUI, я не ожидаю ответа. Насколько я понимаю, свойство FORCE_SC_ACCEPTED вызывает 202 HTTP-ответ клиенту, поэтому он перестает ждать ответа, когда для этого свойства установлено значение true. Кто-нибудь может подсказать, как работает свойство FORCE_SC_ACCEPTED?

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>

Таким образом, в вашем примере без посредника "call" или "send" вы получите 200. Вы можете изменить это, установив HTTP_SC самостоятельно (и удалив тело):

<property name="HTTP_SC" value="202" scope="axis2"/>
<property name="NO_ENTITY_BODY" value="true" scope="axis2" type="BOOLEAN"/>
<respond/>
Другие вопросы по тегам