Java 如何使用HTTPClient的HEAD方法获取所有头

Java 如何使用HTTPClient的HEAD方法获取所有头,java,header,http-headers,httpclient,head,Java,Header,Http Headers,Httpclient,Head,我必须使用HttpClient的HEAD方法获取头字段并检查服务器文件的“上次修改”日期。 我不能得到,如果你知道如何获得标题字段,然后请回复。 如何将“last modified”头放入String对象中进行比较 这是我的密码: HttpClient client = new DefaultHttpClient(); //HttpGet get = new HttpGet(url); HttpHead method = new HttpHead(url); HttpResponse respo

我必须使用
HttpClient
HEAD
方法获取头字段并检查服务器文件的“上次修改”日期。
我不能得到,如果你知道如何获得标题字段,然后请回复。 如何将“last modified”头放入String对象中进行比较

这是我的密码:

HttpClient client = new DefaultHttpClient();
//HttpGet get = new HttpGet(url);
HttpHead method = new HttpHead(url);
HttpResponse response= client.execute(method);

Header[] s = response.getAllHeaders();

System.out.println("THe header from the httpclient:");
for(int i=0; i < s.length; i++){
    Header hd = s[i];
    System.out.println("Header Name: "+hd.getName()
                        +"       "+" Header Value: "+ hd.getValue());
}
HttpClient=newdefaulthttpclient();
//HttpGet=新的HttpGet(url);
HttpHead方法=新的HttpHead(url);
HttpResponse response=client.execute(方法);
Header[]s=response.getAllHeaders();
System.out.println(“来自httpclient的头:”);
对于(int i=0;i
来自HttpClient


您需要添加自己的错误处理。

在httpClient 4.5上,您将使用:

final HttpHead headMethod = new HttpHead(fileUri);
final Header header = headMethod.getFirstHeader("last-modified");
final String lastModified = header.getValue();

最好使用如下内容:

CloseableHttpClient client = HttpClientBuilder.create().build();
HttpHead head = new HttpHead(url);
String lastModified;
try {
    CloseableHttpResponse response = client.execute(head);
    int statusCode = response.getStatusLine().getStatusCode();
    if (statusCode == 200) {
        Header header = headMethod.getFirstHeader("last-modified");
        lastModified = header.getValue();
    }
} catch (IOException ignored) {
}

是的,这是书面的,但当我使用它,我得到以下错误。。。。。。。。HeadMethod无法解析为类型。你能告诉我如何解决这个问题吗?是这样写的,但当我使用它时,我发现了以下错误。HeadMethod无法解析为类型。我该如何克服这个问题。请回复..@shashirke,您需要下载Apache commons http客户端库,并将其包含在您的项目中。
CloseableHttpClient client = HttpClientBuilder.create().build();
HttpHead head = new HttpHead(url);
String lastModified;
try {
    CloseableHttpResponse response = client.execute(head);
    int statusCode = response.getStatusLine().getStatusCode();
    if (statusCode == 200) {
        Header header = headMethod.getFirstHeader("last-modified");
        lastModified = header.getValue();
    }
} catch (IOException ignored) {
}