Spring Integration:传递自定义http标头转换为小写

时间:2018-05-17 03:30:09

标签: spring-integration

我的应用程序应该通过自定义http标头,因此我告诉入站http网关将该标头映射为请求和响应标头:

@Bean
public IntegrationFlow myFlow() {

    return IntegrationFlows
       .from(Http.inboundGateway("/myresource/{transactionId}")
         .mappedRequestHeaders("X-My-Header", 
             HTTP_REQUEST_HEADER_NAME_PATTERN)
         .mappedResponseHeaders("X-My-Header", 
             HTTP_RESPONSE_HEADER_NAME_PATTERN)
    ...

标题通过正常,但它被转换为小写,即我在响应中找到x-my-header。我知道http标头不区分大小写,我仍然希望将标头保持原始形式。这可能吗?

1 个答案:

答案 0 :(得分:1)

根据HTTP RFC标头不区分大小写,因此必须更改应用程序中的逻辑以忽略这些名称的大小写。

Tomcat团队建议实施自定义Filter以覆盖响应标头:https://bz.apache.org/bugzilla/show_bug.cgi?id=58464

无论如何,我会重新考虑一个客户端app逻辑不处理案例。与Spring Integration无关。