Http headers 删除「;主持人;及;org.apache.cxf.request.uri“;来自camel交换的头文件
我在从camel exchange中的In消息中删除“Host”和“org.apache.cxf.request.uri”头时遇到问题。我正在使用cxfrs客户端调用rest端点。但在调用之前,我使用了removeHeaders标记并从exchange中删除了一些不必要的头。一些标题被删除。但我无法删除“Host”和“org.apache.cxf.request.uri”标题。在removeHeaders调用之后,它们将临时从流中删除。但是当使用cxf rs客户端调用时,它们会出现在请求调用头中。下面是我的场景中的一个示例Http headers 删除「;主持人;及;org.apache.cxf.request.uri“;来自camel交换的头文件,http-headers,apache-camel,cxfrs,Http Headers,Apache Camel,Cxfrs,我在从camel exchange中的In消息中删除“Host”和“org.apache.cxf.request.uri”头时遇到问题。我正在使用cxfrs客户端调用rest端点。但在调用之前,我使用了removeHeaders标记并从exchange中删除了一些不必要的头。一些标题被删除。但我无法删除“Host”和“org.apache.cxf.request.uri”标题。在removeHeaders调用之后,它们将临时从流中删除。但是当使用cxf rs客户端调用时,它们会出现在请求调用头中
**<to uri="direct:removeUnnecessaryHeaders" />**
<setHeader headerName="CamelCxfRsUsingHttpAPI">
<constant>true</constant>
</setHeader>
<setHeader headerName="CamelHttpMethod">
<constant>PUT</constant>
</setHeader>
<setHeader headerName="CamelHttpPath">
<constant>/partner/managepartnerprofile</constant>
</setHeader>
<to uri="cxfrs:bean:aclient"/>
</when>
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
..............................
${property.asd}==true&${property.afd}==true
**<to uri="direct:removeUnnecessaryHeaders" />**
<setHeader headerName="CamelCxfRsUsingHttpAPI">
<constant>true</constant>
</setHeader>
<setHeader headerName="CamelHttpMethod">
<constant>PUT</constant>
</setHeader>
<setHeader headerName="CamelHttpPath">
<constant>/partner/managepartnerprofile</constant>
</setHeader>
<to uri="cxfrs:bean:aclient"/>
</when>
****
真的
放
/合作伙伴/管理者合作伙伴简介
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
**<to uri="direct:removeUnnecessaryHeaders" />**
<setHeader headerName="CamelCxfRsUsingHttpAPI">
<constant>true</constant>
</setHeader>
<setHeader headerName="CamelHttpMethod">
<constant>PUT</constant>
</setHeader>
<setHeader headerName="CamelHttpPath">
<constant>/partner/managepartnerprofile</constant>
</setHeader>
<to uri="cxfrs:bean:aclient"/>
</when>
**<route>
<from uri="direct:removeUnnecessaryHeaders" />
<removeHeaders pattern="CamelCxfRsResponseGenericType|org.apache.cxf.request.uri|CamelCxfMessage|CamelHttpResponseCode|Host" />
</route>**
**
**
我刚刚做了一些测试,发现这些头应该告诉CXF如何使用WebClient构建请求,它们不应该被视为HTTP协议头
**<to uri="direct:removeUnnecessaryHeaders" />**
<setHeader headerName="CamelCxfRsUsingHttpAPI">
<constant>true</constant>
</setHeader>
<setHeader headerName="CamelHttpMethod">
<constant>PUT</constant>
</setHeader>
<setHeader headerName="CamelHttpPath">
<constant>/partner/managepartnerprofile</constant>
</setHeader>
<to uri="cxfrs:bean:aclient"/>
</when>
如果不想将这些头发送到服务器,可以使用camel-http或camel-http4端点
**<to uri="direct:removeUnnecessaryHeaders" />**
<setHeader headerName="CamelCxfRsUsingHttpAPI">
<constant>true</constant>
</setHeader>
<setHeader headerName="CamelHttpMethod">
<constant>PUT</constant>
</setHeader>
<setHeader headerName="CamelHttpPath">
<constant>/partner/managepartnerprofile</constant>
</setHeader>
<to uri="cxfrs:bean:aclient"/>
</when>