本文中演示如何通過URLConnection獲取Http響應Header信息
1.從響應中獲得Header信息
URL obj = new URL("http://www.bianceng.cn"); URLConnection conn = obj.openConnection(); Map<String, List<String>> map = conn.getHeaderFields();
2.從響應Header中獲取Server信息
Map<String, List<String>> map = conn.getHeaderFields(); List<String> server = map.get("Server");
完整的示例
package com.qiyadeng.http; import java.net.URL; import java.net.URLConnection; import java.util.List; import java.util.Map; public class GetHttpResponseHeader { public static void main(String[] args) { try { URL obj = new URL("http://www.bianceng.cn"); URLConnection conn = obj.openConnection(); Map<String, List<String>> map = conn.getHeaderFields(); System.out.println("顯示響應Header信息...\n"); for (Map.Entry<String, List<String>> entry : map.entrySet()) { System.out.println("Key : " + entry.getKey() + " ,Value : " + entry.getValue()); } System.out.println("\n使用key獲得響應Header信息 \n"); List<String> server = map.get("Server"); if (server == null) { System.out.println("Key 'Server' is not found!"); } else { for (String values : server) { System.out.println(values); } } } catch (Exception e) { e.printStackTrace(); } } }
輸出
顯示響應Header信息...
Key : null ,Value : [HTTP/1.1 200 OK] Key : X-Pingback ,Value : [http://www.bianceng.cn/xmlrpc.php] Key : Date ,Value : [Sun, 10 Mar 2013 12:16:26 GMT] Key : Transfer-Encoding ,Value : [chunked] Key : Connection ,Value : [close] Key : Content-Type ,Value : [text/html; charset=UTF-8] Key : Server ,Value : [Apache/2.2.3 (CentOS)] Key : X-Powered-By ,Value : [PHP/5.2.17] 使用key獲得響應Header信息 ... Apache/2.2.3 (CentOS)
出處:http://www.qiyadeng.com/