我一直在试图获取由列举HTTPMethod发送的头,使用HttpClient的4,但没有任何成功...问题显示请求头与Apache HttpClient的4
这里是我的代码:
HttpClient httpClient = new DefaultHttpClient();
HttpParams httpParams = httpClient.getParams();
HttpGet httpGet = new HttpGet("http://www.google.fr");
HttpResponse response = httpClient.execute(httpGet);
log.info("*** Request headers ***");
Header[] requestHeaders = httpGet.getAllHeaders();
for(Header header : requestHeaders) {
log.info(header.toString());
}
log.info("***********************");
log.info("*** reponse ***");
log.info(response.getStatusLine());
Header[] headers = response.getAllHeaders();
for(Header header : headers) {
log.info(header.toString());
}
但结果是:
00:27:57,368 INFO - *** Request headers ***
00:27:57,368 INFO - ***********************
00:27:57,368 INFO - *** reponse ***
00:27:57,368 INFO - HTTP/1.1 200 OK
00:27:57,368 INFO - Date: Sun, 15 Aug 2010 22:28:09 GMT
00:27:57,368 INFO - Expires: -1
00:27:57,368 INFO - Cache-Control: private, max-age=0
00:27:57,368 INFO - Content-Type: text/html; charset=ISO-8859-1
00:27:57,368 INFO - Set-Cookie:
[..]
阿卡响应报头是好的,但不是要求的。 (如果我在执行语句之前移动日志请求头块,结果相同)。
(不,我不想只看到他们,所以设置日志级别调试心不是可以接受的)
任何人都可以帮助吗?
感谢您的回答,但我说更改日志级别不可接受:我需要存储发送的标头。您确定在执行请求之前甚至之后无法获取它们? – 2010-08-16 07:57:51