公司的网络需要代理,且需要用域、户名、密码。这种方式本人已验证通过。
public static void main(String[] args) throws Exception {
DefaultHttpClient httpclient = new DefaultHttpClient();
try {
AuthScope authscope=new AuthScope(PROXY_HOST, PROXY_PORT);
Credentials credentials=new NTCredentials(PROXY_USERNAME,PROXY_PASSWORD,PROXY_WORKSTATION,PROXY_DOMAIN);
httpclient.getCredentialsProvider().setCredentials(authscope,credentials);
HttpHost targetHost = new HttpHost(TARGET_HOST);
HttpHost proxy = new HttpHost(PROXY_HOST, PROXY_PORT);
httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy);
HttpGet httpget = new HttpGet(TARGET_GETURL);
System.out.println("executing request: " + httpget.getRequestLine());
System.out.println("via proxy: " + proxy);
System.out.println("to target: " + targetHost);
HttpResponse response = httpclient.execute(targetHost, httpget);
HttpEntity entity = response.getEntity();
System.out.println("----------------------------------------");
System.out.println(response.getStatusLine());
if (entity != null) {
System.out.println("Response content length: " + entity.getContentLength());
}
EntityUtils.consume(entity);
} finally {
httpclient.getConnectionManager().shutdown();
}
}