目录
- 基本概念
- 请求数据
- Get请求方式和Post请求方式
- 响应数据
- 响应状态码
基本概念
Http协议全称超文本传输协议(HyperText Transfer Protocol),是网络通信中应用层的协议,规定了浏览器和web服务器数据传输的格式和规则
https://i-blog.csdnimg.cn/direct/e51a5c3d76234e0b8123ada5eddf8598.png" alt="在这里插入图片描述" />
Http应用层协议具有以下特点:
- 面向tcp传输层协议,可靠通信
- 一次请求数据返回一次响应数据
- Http协议是无状态的协议,每次请求-相应都是独立的,多次请求间不能共享数据,java提供了cookie和session会话技术解决了这个问题,实现了多个请求间共享数据
请求数据
请求数据是浏览器在分析处理完用户动作后 根据web服务器ip地址和端口号 委托操作系统tcp协议栈向服务器发送的数据格式;
https://i-blog.csdnimg.cn/direct/1ce21298012c4a0eaaac8611f549b0b6.png" alt="在这里插入图片描述" />
请求数据包含三部分内容:请求行、请求头、请求体;
-
请求行:请求数据的第一行;包含请求方法(get,post等)、请求资源路径、http协议版本;
-
请求头:请求数据第二行开始,格式是key:value格式
https://i-blog.csdnimg.cn/direct/3ba804249d4b44018d70c4fe4da9f0f8.png" alt="在这里插入图片描述" />
-
请求体:post请求方式的最后一部分,存放请求参数
Get请求方式和Post请求方式
Get请求方式和Post请求方式的区别是请求参数存放的位置,Get请求方式请求参数放在请求行访问资源路径后面;
GET /api/users?username=superbaby&password=123456
Post请求方式请求参数放在请求体上;这样web服务器在接收请求数据后,根据请求方法是get或者post就知道从哪个位置获取请求参数。
https://i-blog.csdnimg.cn/direct/5a0043120934490dae739439b11a0b6e.png" alt="在这里插入图片描述" />
响应数据
响应数据是web服务器在接收并解析浏览器发送的请求数据后,委托tcp协议栈向浏览器发送的数据格式,浏览器在解析响应数据后,将效果展示在浏览器屏幕上;
https://i-blog.csdnimg.cn/direct/7ec00c10e900406c83ef5b8818a24d08.png" alt="在这里插入图片描述" />
响应数据包含三部分内容:响应行、响应头、响应体;
-
响应行:响应数据的第一行;包含http协议版本、状态码、状态码英文描述;
-
响应头:响应数据第二行开始,格式是key:value格式
https://i-blog.csdnimg.cn/direct/87d9a59c1122461f9f6fbb606fa20d22.png" alt="在这里插入图片描述" />
-
响应体:响应数据的最后部分,存放供浏览器解析的数据
响应状态码
响应状态码是web服务器通知浏览器此次访问成功与否,分为5大类
最重要的三个状态码:200(访问成功)、404(访问资源不存在)、500(web服务器内部错误)
https://i-blog.csdnimg.cn/direct/5acb0c75daa14aa4b1870cbb81297acd.png" alt="在这里插入图片描述" />