0

在基于用户登录的Spring-integration Http请求中要添加动态标头参数。例如,如果“A”用户登录并点击Http请求,现在需要添加动态1个附加标头,对于其他用户,它甚至应该是关键太(即值为空)

对于 A 用户

<int:gateway id="requestGateway" service-interface="net.group.gateway.Gateway"  default-request-channel="jsonTransformationChannel">
            <int:default-header name="X-MW-LOGGEDID" expression="@requestData.getLoggedID()" />
            <int:default-header name="X-Srcvalue" value="56789" />
            <int:default-header name="content-type" value="application/json" />
            <int:default-header name="Accept" value="application/json" />
</int:gateway>

对于其他用户

<int:gateway id="requestGateway" service-interface="net.group.gateway.Gateway"  default-request-channel="jsonTransformationChannel">
            <int:default-header name="X-MW-LOGGEDID" expression="@requestData.getLoggedID()" />
            <int:default-header name="content-type" value="application/json" />
            <int:default-header name="Accept" value="application/json" />
 </int:gateway>
4

1 回答 1

0

我猜这个故事就是关于那个的X-Srcvalue。既然你说null其他人都可以,那最好使用 anexpression而不是 value。

<int:default-header name="X-Srcvalue" expression="USER == A ? 56789 : null" />

在表达式中,您可以使用应用程序上下文中的任何 bean 来执行任何复杂性的逻辑。

于 2018-03-20T12:39:19.870 回答