【问题标题】:Add a Query parameter in Mule在 Mule 中添加 Query 参数
【发布时间】:2016-06-09 19:35:48
【问题描述】:

您好,我想添加一个查询参数 Age = 23 我尝试添加

message.inboundProperties.'http.query.params'.Age = '23' 

在表达式中

<expression-component doc:name="Expression"><![CDATA[message.inboundProperties.'http.query.params'.Age= '23';]]></expression-component>

这行不通。

【问题讨论】:

  • 这是针对 HTTP 请求还是响应?如果是这种情况,您应该使用请求/响应构建器。
  • 请发布您正在使用的流程。
  • 这是用于发布 HTTP 请求

标签: http parameters header mule


【解决方案1】:

入站属性是不可变的,因此您必须将其添加到出站属性中才能在出站 http 连接器中添加查询参数,您可以使用以下内容

<http:request config-ref="HTTP_Request_Configuration" path="outway" method="POST" doc:name="HTTP">
            <http:request-builder>
                <http:query-param paramName="Age" value="23"/>
 </http:request-builder>
        </http:request>

【讨论】:

    【解决方案2】:

    要将属性添加到传出消息,它们需要在出站范围内:

    message.outboundProperties.'http.query.params'.Age= '23'
    

    【讨论】:

      【解决方案3】:

      您正在尝试修改入站属性,但您不能,它们是不可变的

      属性有两个主要范围:入站和出站。

      入站属性是不可变的,由消息源自动生成,用户无法设置或操作。它们包含特定于消息源的元数据,可防止在消息生命周期后期出现数据格式混乱或其他处理事故。消息仅在流期间保留其入站属性;当消息从流中传递出去时,它的入站属性不会跟随它(见下图)。

      https://docs.mulesoft.com/mule-fundamentals/v/3.7/mule-message-structure

      您必须按照 Ryan 所说的将其添加到出站。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-30
        • 2020-09-12
        • 1970-01-01
        • 2012-07-22
        • 1970-01-01
        相关资源
        最近更新 更多