We've got an Apache Camel (2.13.2) app that uses http4 to communicate with a webserver, using NTLM for auth.
The endpoint is defined as (pseudo):
...
.to("http4://thegreat.server.com/uri?authUsername=" + user + "&authPassword=" + pass
+ "&authenticationPreemptive=true&authMethod=NTLM&authDomain=DOMAIN&authHost=host")
.to("otherEndpoint");
Run Code Online (Sandbox Code Playgroud)
This works well as long as the pass variable contains "non-special" chars.
但是,pass例如,如果包含"abcd&def"-骆驼将按其解释,将&符解释为查询参数分隔符。
但是,对与符号(即"abcd%26def")进行编码的网址完全没有区别吗?
最后,骆驼"http://thegreat.server.com/uri?authMethod=NTLM&def="使用截断的密码调用端点。
是否有我们显然遗漏的东西,还是这种看起来像是错误?
谢谢。