当前位置: 首页 > 面试题库 >

如何在Java中的HttpClient请求上设置代理主机

杜起运
2023-03-14
问题内容

我想HttpClient在对URL 发送请求之前设置代理。因为我能够连接curl命令来设置代理,但是使用Java代码却无法做到这一点。

卷曲命令:

**curl -I -x IP:80  URL**

在Java文件中完成代码更改:

HttpClient client = new HttpClient();
System.getProperties().put("http.proxyHost", "someProxyURL");
System.getProperties().put("http.proxyPort", "someProxyPort");
EntityEnclosingMethod method = new PostMethod(url);
method.setRequestEntity(new StringRequestEntity(requestXML, "text/xml", "utf-8"));

通过上述代码在我的java文件中的更改,我得到以下错误:

java.net.ConnectException: Connection refused (Connection refused)

这表明我无法将该URL与尝试用于连接URL的代理连接。


问题答案:

我认为这可能会有所帮助:

HttpClient client = new HttpClient();

HostConfiguration config = client.getHostConfiguration();
config.setProxy("someProxyURL", "someProxyPort");

Credentials credentials = new UsernamePasswordCredentials("username", "password");
AuthScope authScope = new AuthScope("someProxyURL", "someProxyPort");
client.getState().setProxyCredentials(authScope, credentials);

EntityEnclosingMethod method = new PostMethod(url);
method.setRequestEntity(new StringRequestEntity(requestXML, "text/xml", "utf-8"));


 类似资料:
  • 问题内容: 我需要为我们对服务(而非Web服务)发出的Http请求设置超时。我们正在使用Apache HTTP客户端。我添加了这两行代码,以根据请求和对服务的响应设置超时时间。 1)目前,我已将超时设置为10秒,因为我几乎立即从服务中看到了响应。我应该增加还是减少时间? 2)如果响应时间超过10秒,会发生什么?它会抛出异常吗?它将是什么异常?我还需要添加其他内容来设置以下代码中的超时时间。 问题答

  • 问题内容: 看来我可以在构造new时指定代理: 取自http://hc.apache.org/httpcomponents-client- ga/tutorial/html/connmgmt.html#d5e475 是否可以修改现有客户端的代理设置。 问题答案: 您可以创建自己的HttpRoutePlanner实现,该实现将允许更改HttpHost。 然后,您可以在代码中使用此DynamicPro

  • 问题内容: 我正在尝试将一些参数发布到服务器,但是我需要设置代理。您可以帮助我对代码的“设置代理”部分进行排序吗? 问题答案: 是的,这是我自己解决的问题 应该 Apache HttpClient 4.1的完整示例,可以在下面找到设置代理

  • 似乎我可以在构建新的时指定代理: 摘自http://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html#d5e475 是否可以修改现有客户端的代理设置。

  • 我正在尝试与国家、城市和机场建立Anylogic代理模型。我在主代理中创建了国家人口,在每个国家创建了城市人口,在每个城市创建了机场人口。机场代理已经协调,应放在地理信息系统地图上,位于主代理。 然而,它们现在没有显示,我可以在主GIS地图上显示的唯一人口是国家。 如何在主GIS地图上放置机场嵌套代理,而不直接在主GIS地图上创建新的机场人口?

  • 问题内容: 我可以如下设置Firefox的代理设置。 但是我也需要设置Chrome。.有人可以帮助我怎么做吗? 谢谢拉吉 问题答案: 您可以尝试使用该类,如下所示: