首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么调用请求-响应出站端点会覆盖入站作用域中的变量?

为什么调用请求-响应出站端点会覆盖入站作用域中的变量?
EN

Stack Overflow用户
提问于 2013-06-24 07:32:53
回答 3查看 1K关注 0票数 0

我注意到,如果我有一个这样的流模式:

代码语言:javascript
复制
<flow name="httpIn">
    <http:inbound-endpoint exchange-pattern="request-response" address="http://localhost:9001/test/in" />
    <logger level="INFO" />
    <http:outbound-endpoint exchange-pattern="request-response" address="http://localhost:9001/test/out" />
    <logger level="INFO" />
</flow>

在调用带有request-responseoutbound-endpoint交换模式之后,来自原始HTTP请求的入站属性会丢失。

这是正常行为吗?是否有办法对所有出站端点整体禁用此功能,或者此端点是特定的?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-06-24 20:38:08

是的,这是正常的行为。这里有一个很好的解释:

http://blogs.mulesoft.org/mule-school-the-mulemessage-property-scopes-and-variables/

模块入站属性

入站属性不能由您设置。消息源(如入站终结点)在收到消息时为您设置它们。当穿越“传输障碍”Mule出站属性时,入站属性会丢失

出站属性可以由您设置。当跨越“传输障碍”时,出站属性将自动转换为入站属性,并且不再作为出站属性存在。-更多信息请访问:http://blogs.mulesoft.org/mule-school-the-mulemessage-property-scopes-and-variables/#sthash.yGzTrZEQ.dpuf

票数 2
EN

Stack Overflow用户

发布于 2013-06-24 21:30:52

是的,Mule入站属性不会在传输中传播。正如此link中所解释的

  • Inbound属性由消息源自动生成,不能由用户可以配置的user.
  • Outbound属性设置或操作。出站属性是在流的过程中设置的,当消息通过传输从一个流的出站端点传递到另一个流的入站端点时,出站属性可以成为入站属性。(请注意,如果消息通过flow-ref而不是传输传递到新流,则出站属性将保持出站属性,而不是转换为入站属性。)

但是请注意,您可以通过如下方式复制属性来保留传输之间的所有入站属性:

<copy-properties propertyName="*" />

这将复制所有属性,如果只需要很少的属性,您还可以指定特定的属性名称。

票数 1
EN

Stack Overflow用户

发布于 2016-12-12 00:20:33

Mule入站属性:这些属性由消息源设置,否则inblound端点automatically.they不能由您设置。它们是不变的,即。您不能对它们进行任何更改。您只能访问它们,但不能修改它们。他们在穿过“运输障碍”后迷路了。

Mule Outbound properties :这些属性可以由您设置。在穿越传输屏障后,出站属性将自动转换为入站属性,并且不再在出站范围中找到它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17266272

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档