Java如何从HTTP请求获取响应标头?
package org.nhooo.example.network;
import java.io.IOException;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import java.util.Map;
public class HttpResponseHeaderDemo {
public static void main(String[] args) {
try {
URL url = new URL("https://nhooo.com/index.php");
URLConnection connection = url.openConnection();
Map<String, List<String>> responseMap = connection.getHeaderFields();
for (String key : responseMap.keySet()) {
System.out.print(key + " = ");
List<String> values = responseMap.get(key);
for (String value : values) {
System.out.print(value + ", ");
}
System.out.println();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}上面的代码产生的结果是:
Transfer-Encoding = chunked, Keep-Alive = timeout=5, max=100, null = HTTP/1.1 200 OK, Server = Apache, Connection = Keep-Alive, Link = <https://nhooo.com/wp-json/>; rel="https://api.w.org/", <https://wp.me/8avgG>; rel=shortlink, Date = Mon, 07 May 2018 07:48:34 GMT, Content-Type = text/html; charset=UTF-8,