Java 通过不同的代理发送多个httpRequest

Java 通过不同的代理发送多个httpRequest,java,proxy,apache-httpclient-4.x,Java,Proxy,Apache Httpclient 4.x,我正在使用HTTPClient Fluent API 4.3.2版向用户定义的不同地址发送多个请求。每个地址将使用其特定的代理设置。以下是我目前的代码: try { final Executor executor = Executor.newInstance().auth(proxy, userName, passWord); System.out.println(executor.execute(Request.Get(uri).viaProx

我正在使用HTTPClient Fluent API 4.3.2版向用户定义的不同地址发送多个请求。每个地址将使用其特定的代理设置。以下是我目前的代码:

try {

            final Executor executor = Executor.newInstance().auth(proxy, userName, passWord);
            System.out.println(executor.execute(Request.Get(uri).viaProxy(proxy)).returnResponse().getStatusLine());
        } catch (final Exception e) { 
            e.printStackTrace(); 
        }
我面临一个问题,当我使用代理服务器1连接到地址1时(代理服务器用户名和代理服务器密码的值正确),请求会按预期正确发送

但是,当我使用代理1添加地址2时(代理用户名和代理密码的值错误),预期请求将失败,但仍然成功连接

我认为在通过代理发送请求之后,第一个代理设置被缓存在JVM的某个地方,我不能为另一个请求设置另一个代理设置


有什么解决方案吗?

在请求执行之前尝试设置代理

Executor executor = Executor.newInstance().auth(proxy, userName, passWord);
System.out.println(executor
  .viaProxy(proxy)
  .execute(Request.Get(uri))
  .returnResponse().getStatusLine());

谢谢奥列格,它帮助了我。很抱歉反应太晚!!