《图解HTTP》—简单的HTTP协议

·  阅读 1533

简单的HTTP协议

客户端和服务端的通信

​ 一般请求都是有客户端发出的,而服务器回复的是响应。服务器相对来说是比较被动的。

客户端,请求方法 :GET 、地址: / 、协议版本 :HTTP1.1 、请求首部:Host:xxx等。服务器返回的信息:HTTP协议版本号,状态码以及结果短语、响应首部(响应时间之后的)和资源主体(html开始)。

HTTP协议是无状态的

​ 一开始在公司做前后分离,引入了token机制,为什么要这么做?本质上还是因为HTTP协议是无状态的。所谓无状态,就是通信的双方没有记住通信历史,协议本身是不保留一切请求和响应的信息。这也是确保HTTP协议有能够处理大量事务且具有可伸缩性的原因。

HTTP 方法

​ GET :获取资源。

​ POST :传输实体主体,主要目的是传输。

​ PUT : 传输文件,保存到指定的位置。不带验证机制。

​ HEAD : 获得报文首部,不常用。

​ DELETE :删除文件。 同样不带验证机制。

​ OPTIONS :查询支持的方法。不常用

​ TRACE :追踪路径。挺有意思的一个东西。可以计算代理服务器有多少个,但是容易引发xst攻击(好想学web安全)。不常用

​ CONNECT :要求使用隧道协议连接代理,不常用。

持久链接节省通信量

​ 一图胜千言啊。

​ 1.1里提出来HTTP keep-alive。持久链接,只要没有一端提出明确的断开链接,则保持TCP链接。

​ 管线化。并行发送响应,无需等待上一个请求结束。

​ 之前说过的,因为HTTP协议是无状态的,无法判断登陆验证,所以需要在请求中添加参数来管理登录状态。

​ Cookie,服务器生成Cookie,response 过去,那么接受的客户端第二次发请求就可以设置了一个参数,保存当前登陆的信息。

​ 如若有错误之处,看官多多指正,随手点个赞呗,亲。另外我的微信公众号也会慢慢发布前端的东西,希望学习前端的小伙伴可以关注一波moomoocode

分类:
前端
标签: