专栏文章索引:网络安全
有问题可私聊:QQ:3375119339
目录
学习目标![](https://i-blog.csdnimg.cn/blog_migrate/d071e853e3d3b9029f980d956470666f.png)
- 了解掌握HTTP协议的特点
一、请求与响应![](https://i-blog.csdnimg.cn/blog_migrate/f9cd4b8fb5d0ec2bd49ab8aca7a6cab6.png)
1.服务器和客户端
- HTTP协议的通信双方
- 服务器
- 发起请求
- 客户端
- 响应请求
- 服务器
Http协议规定,请求从客户端发起,由服务端来响应该请求并返回。
- 客户端发起请求,服务端才会响应
- 客户端未发起请求,服务端是不会响应的
二、不保存状态![](https://i-blog.csdnimg.cn/blog_migrate/59b9f3bdd97c826261c2abf9298fe879.png)
1.不保存状态的协议
- HTTP协议不保存请求和响应的通信状态,不做持久化处理
- 每次新的请求,对应一次响应产生
【问题】为什么登录一个某些网站后,间隔一段时间,网站还是知道我们是谁呢?
三、资源定位![](https://i-blog.csdnimg.cn/blog_migrate/5fd20c8277f70c0cbafc60577fb1f2c1.png)
1.URI(统一资源标识符)
- HTTP协议通过请求URI,实现对资源的访问
以下示例中,请求的URI地址是: http://finance.sina.com.cn/zl/china/ 2021-02-01/zl-ikftssap2140491.shtml
四、请求方法![](https://i-blog.csdnimg.cn/blog_migrate/7339792c23bdc2de0b6e20ebe8338534.png)
1.请求方法
方法是为了告知服务器,该请求的意图是什么,向服务器所请求的资源下达命令。
- HTTP1.1的主要请求方法包括:
- GET 获取资源
- POST 传输实体主体
- PUT 传输文件
- OPTIONS 询问支持的方法
- HEAD 获得报文首部
- DELETE 删除文件
- TRACE 追踪路径
- CONNECT 要求用隧道协议连接代理
五、持久连接&管线技术![](https://i-blog.csdnimg.cn/blog_migrate/5b0c7d0eed3fdb98f516a5df04ce4469.png)
1.持久连接
1)持久连接要解决的问题
- 最早期版本,发起一次HTTP请求,就需要建立一次tcp连接。
- 服务器成本较高(一对多,多个tcp连接,多台客户端请求)
2)持久连接(HTTP keep alive)
- 建立一次tcp连接,只要任意一端没有提出断开连接,tcp连接就保持着。
- 减少了服务器压力,相同时间共快传输完内容,显示速度也相应提升。
2.管线技术
- 在持久连接技术之上发展而来, 之前是发送一个请求,响应后,才能发送下一个 请求。
- 管线技术,客户端可以一次发送多个请求,同时接收多个响应。
- 管理技术,并发传输,进一步提升了资源传输的效率,内容显示更快。
六、cookie技术![](https://i-blog.csdnimg.cn/blog_migrate/2d0491515a49585603228ab58ebbaaa5.png)
- http无状态协议,随着web应用的发展, 服务器需要连接为不同客户端提供连接 状态的服务,cookie技术应运而生。
- Cookie技术通过在请求和响应报文中写入cookie信息来控制客户端的状态。
- Cookie会根据从服务器端发送的响应报文内的一个叫做Set- Cookie的首部字段信息, 通知客户端保存Cookie,客户端下次再向服务器发送请求时,会自动携带cookie信 息,一起发送给服务器;
- 服务器发现客户端发送过来的cookie后,会去检查是从哪一个客户端发来的连接请求, 然后对比服务器上的记录,最后得到之前的状态信息,这时,就可为客户端继续提供 状态性的服务了。