Тайм-аут ответа на запрос Mule Https

Я пытаюсь настроить тайм-аут ответа для компонента запроса https. Мой http-коннектор вызывает URL-адрес, я хочу установить время, например, через 5 секунд, если нет ответа от URL-адреса, закройте это https-соединение. Но меня искали в Google и на сайте mule, нет соответствующей информации. Этот веб-сервис, который я вызываю, сбрасывает пароль, если по прошествии определенного времени я не получаю ответа, я хочу закрыть его и НЕ хочу сбрасывать его.

Вот пример кода:

<http:request-config name="HTTP_Request_Configuration" protocol="HTTPS" host="10.255.255.1." port="2446" doc:name="HTTP Request Configuration"  responseTimeout="1" usePersistentConnections="false">

ResponseTimeout ничего не делает, я пробовал использовать SOAPUI, чтобы проверить, что время все равно, независимо от того, что я поставил. заранее спасибо


person xiao lin    schedule 28.02.2017    source источник


Ответы (1)


Я установил свойство responseTimeout в конфигурации Http-запроса, и оно у меня работает.

Пожалуйста, найдите код ниже

<!--Http Listener Config for calling Service-->
    <http:listener-config name="HTTP_Listener_Configuration1" host="0.0.0.0" port="8092" doc:name="HTTP Listener Configuration"/>

    <http:request-config name="HTTP_Request_Configuration" host="localhost" port="8092" doc:name="HTTP Request Configuration" responseTimeout="5000"/>

    <flow name="testtimeoutFlow">
        <http:listener config-ref="HTTP_Listener_Configuration" path="/" doc:name="HTTP"/>
        <http:request config-ref="HTTP_Request_Configuration" path="/test" method="GET" doc:name="HTTP"/>
        <catch-exception-strategy doc:name="Catch Exception Strategy">
            <logger message="#[message.exception]" level="INFO" doc:name="Logger"/>
            <set-payload value="#['Time out Error']" doc:name="Set Payload"/>
        </catch-exception-strategy>
    </flow>

<!-- Flow which has delay in responding the data-->
    <flow name="testtimeoutFlow1">
        <http:listener config-ref="HTTP_Listener_Configuration1" path="/test" doc:name="HTTP" allowedMethods="GET"/>
        <set-payload value="#['HelloWorld']" doc:name="Set Payload"/>
        <logger message="#[payload]" level="INFO" doc:name="Logger"/>
<!-- Delay for 10 seconds-->
        <scripting:component doc:name="Groovy">
            <scripting:script engine="Groovy"><![CDATA[sleep(10000);
return message.payload;]]>
  </scripting:script>
        </scripting:component>
        <logger message="After Script : #[payload]" level="INFO" doc:name="Logger"/>
    </flow>

Надеюсь это поможет.

person Mukesh Kumar    schedule 01.03.2017