簡體   English   中英

MULE ESB使用先前組件的參數發送帖子

[英]MULE ESB send post with parameters from previous component

首先,我想向您展示代碼:

    <flow name="SetParamFlow" doc:name="SetParamFlow">
    <http:inbound-endpoint exchange-pattern="request-response"
        host="localhost" port="8081" path="setParamFlow" doc:name="HTTP" />
    <response>
        <http:response-builder status="200"
            doc:name="HTTP Response Builder" contentType="application/json">
            <http:cache-control noCache="true" />
        </http:response-builder>
    </response>
    <json:json-to-object-transformer
        returnClass="com.integration.SetParamWrapper"
        doc:name="JSON to Object" />

    <expression-component doc:name="Args2SOAP">
      <![CDATA[
        import java.util.HashMap;
        payload = {
          payload.getParam1(),
          payload.getParam2()
        };
      ]]>

    </expression-component>

    <response>
        <json:object-to-json-transformer
            doc:name="Object to JSON" />
    </response>
    <response>
        <expression-component doc:name="Simplify">
          <![CDATA[
               payload = ['param1': payload.getParam1(), 'exception': payload.exception.getValue()];
             ]]>
        </expression-component>
        <logger message="Simplified result: #[message.payload]" level="INFO" doc:name="Simplified result"/>
    </response>
    <logger message="Setting params : #[message.payload]" level="INFO" doc:name="Setting params"/>
</flow>

這是我的學習m子系統的一部分,您可以看到我獲得了Param1和Param2,但是我不知道如何在發布時通過post傳遞它們。

我想將它們發布到外部位置,例如:

www.foo.com/getParams?value1=getParam1()&VALUE2 = getParam2()

我可以使用java spring RestTemplates來做到這一點,但這不是我要充分使用m子的最佳選擇。 有什么想法可以通過這些參數嗎?

在談論POST並使用GET進行示例時,很難理解您的問題。

在流程的最后,消息有效負載是一個數組,該數組具有通過getParam1()和getParam2()設置的表達式組件。 如果要將這些參數放入所描述的url中,則可以在http出站中將其設置為address="http://www.foo.com/getParams?value1=#[payload[0]]&amp;value2=#[payload[1]]"

如果刪除Args2SOAP表達式組件,則可以使用address="http://www.foo.com/getParams?value1=#[payload.getParam1()]&amp;value2=#[payload.getParam2()]"直。

如果您實際上要使用http POST,則在http出站之前設置為有效負載的任何內容都將作為POST數據發送。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM