Camel解码URL Params。有没有办法获得我发送的URL。 我有以下场景(Spring XML& Camel):
<route id="getDepResources">
<from uri="restlet:/dep/{depId}/resources?restletMethods=GET"/>
<bean ref="deptUtility" method="process" />
</route>
public void process(Exchange exchange) throws Exception {
Message message = exchange.getIn();
String body = message.getBody(String.class);
String uri = message.getHeader(Exchange.HTTP_URI, String.class);
......
}
curl -X GET 'http://localhost:8080/app1/dep/1/resources?resourceDesc=R%26B' --header "Content-Type:application/json"
因此,对于resourceDesc = R%26B(R&amp; B),我需要将其作为R%26B,而我获得的第3行上的URI是http://localhost:8080/app1/dep/1/resources?resourceDesc=R&B
,而我认为它应该是http://localhost:8080/app1/dep/1/resources?resourceDesc=R%26B
。我可以采用相同或任何其他方式进行配置吗?请建议。
答案 0 :(得分:0)
它与camel没有直接关系,它与URI的规范有关:URI应该由UA解码。
如果您希望按原样获取,则应引用百分比字符。 %
的引用为%25