4-7 HTTP操作(一)
1 什么是HTTP协议
超文本传输协议
客户端和服务器端请求应答的标准
客户端浏览器或其他程序与Web服务器之间的应用层通信协议
无状态协议
2 HTTP工作原理
建立连接
客户端发送请求
服务器端响应请求
断开连接
3 HTTP运行流程
请求报文格式:
请求行-通用信息头-请求头-实体头-报文主体
响应报文格式:
响应行-通用信息头-响应头-实体头-报文主体
4-8 HTTP操作(二)
1 Apache HTTP API 介绍
2 发送请求和接受响应的流程
//生成一个请求对象
HttpGet httpGet = new HttpGet("http://www.baidu.com");
//生成一个Http客户端对象
HttpClient httpClient = new DefaultHttpClient();
//使用Http客户端发送请求对象
HttpResponse httpResponse = httpClient.execute(httpGet); //该方法会返回一个HttpResponse对象
//取出内容 代表一个Http消息
HttpEntity httpEntity = httpResponse.getEntity();
InputStream inputStream = httpEntity.getContent();
//进行一些IO流的操作
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String result = "";
String line = "";
while((line = reader.readLine()) = null){
result = result + line;
}
System.out.println(result);
//...
inputStream.close();
4-9 HTTP操作(三)
1 HTTP请求的方法
2 使用GET方法发送请求
get URL xxxxx?key=value&key=value...
剩下的操作和HTTP2中一样
url为拼上?key=value..之后的url
3 使用POST方法发送请求
NameValuePair nameValuePair1 = new BasicNameValuePair("name",name); //name为读取的值
NameValuePair nameValuePair2 = new BasicNameValuePair("age",age); //age为读取的值
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(nameValuePair1);
nameValuePairs.add(nameValuePair2);
//生成Entity对象
HttpEntity requestHttpEntity = new UrlEncodedFormEntity(nameValuePairs);
HttpPost httpPost = new HttpPost(url); //这里的url是baseUrl 不用拼上?key=value...
httpPost.setEntity(requestEntity);
//之后的操作一样
本文深入探讨了HTTP协议的基本概念、工作原理及实际应用。从HTTP协议的定义出发,介绍了其作为客户端和服务器间应用层通信标准的功能特性。接着详细阐述了HTTP的工作流程,包括建立连接、发送请求、接收响应及断开连接的过程。进一步通过实例演示了如何使用Apache HTTP API发送请求和接收响应,包括使用GET和POST方法的具体步骤。本文旨在为开发者提供全面的HTTP操作指南,助力提升网络编程技能。
1065

被折叠的 条评论
为什么被折叠?



