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,