我正在使用BindingType.Browser开发OpenCMIS客户端。创建一个传递USER,PASSWORD,BROWSER_URL,BINDING_TYPE和REPOSITORY_ID所需参数的会话按预期工作。会话已创建,可以执行更多步骤。
现在我想让我的客户端在使用HTTP代理访问互联网的机器上运行。要指定要访问的代理,我设置系统属性http.proxyUrl和http.proxyPort。只要代理不需要身份验证,这也可以。
嗯,这就是我现在正在挣扎的地步。我在我的测试代理中激活了身份验证,在客户端代码中我添加了参数PROXY_USER和PROXY_PASSWORD来创建会话。但这似乎不起作用。我已经调试了使用过的StandardAuthenticationProvider来验证发生了什么。 HTTP-Header“Proxy-Authenticate”由身份验证提供程序创建,但似乎化学框架正在发送没有该标头的请求。在我的代理的日志中,收到的请求不包含任何安全标头。
CONNECT my.server.org:443 HTTP/1.1
User-Agent: Java/1.8.0_111
Host: my.server.org
Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2
Proxy-Connection: keep-alive
有什么建议吗?