HTTP GET 请求
HTTP 请求方法:
1、OPTIONS - 返回服务器针对特定资源所支持的HTTP请求方法。
2、HEAD - 请求页面的首部。
3、GET - 从指定的资源请求数据。
4、POST - 向指定的资源提交要被处理的数据
5、PUT - 从客户端向服务器传送的数据取代指定的文档的内容。
6、DELETE - 请求服务器删除指定的页面。
8、CONNECT - HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
8、TRACE - 请求服务器在响应中的实体主体部分返回所得到的内容。
在客户机和服务器之间进行请求 响应时,两种最常被用到的方法是:GET 和 POST。
public class HttpGetRequest {
/**
* 向指定 URL 发送 GET 方法的请求
*
* @return URL 所代表远程资源的响应结果
*/
public static String sendGet(String url) {
String result = "";
BufferedReader bufferedReader = null;
try {
String urlNameString = url + "?";
URL realUrl = new URL(urlNameString);
URLConnection connection = realUrl.openConnection();
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
connection.connect();
Map<String, List<String>> map = connection.getHeaderFields();
for (String key : map.keySet()) {
System.out.println(key + "-------" + map.get(key));
}
bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
while ((line = bufferedReader.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("******GET请求出现异常******" + e);
e.printStackTrace();
}
finally {
try {
if (bufferedReader != null) {
bufferedReader.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
return result;
}
public static void main(String[] args) {
String getRequset = HttpGetRequest.sendGet("https://github.com/");
System.out.println(getRequset);
}
}
常见的 HTTP 状态码:
200 - 请求成功
301 - 资源(网页等)被永久转移到其它 URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误