PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();
cm.setMaxTotal(MAX_CONNECTIONS);
cm.setDefaultMaxPerRoute(MAX_CONNECTIONS);
httpClient = HttpClients.custom()
.setConnectionManager(cm)
.setDefaultHeaders(defaultHeader())
.build();
private List<Header> defaultHeader() {
ArrayList<Header> headers = new ArrayList<Header>();
Header header = new BasicHeader(HttpHeaders.USER_AGENT, UserAgent);
headers.add(header);
if (!StringUtils.isEmpty(referer)) {
headers.add(new BasicHeader(HttpHeaders.REFERER, referer));
}
if (!StringUtils.isEmpty(cookie)) {
headers.add(new BasicHeader("Cookie", cookie));
}
return headers;
}
请求PHP返回的数据
[HTTP_CONNECTION] => Keep-Alive
[HTTP_USER_AGENT] => Apache-HttpClient/4.3.3 (java 1.5)
怎么header 中的 USER_AGENT 还是默认的呢?
如果在这里设置header 就没问题
HttpGet request = new HttpGet(url);
request.addHeader(HttpHeaders.USER_AGENT, UserAgent);