HTTP协议的一些关键点手记(二)易混淆知识点

2017-06-24  本文已影响0人  冯员外_SundarFung

http1.1/http1.0区别

①http1.0产生的背景

超文本传输协议(HyperText Transfer Protocol)
伴随着计算机网络和浏览器的诞生,HTTP1.0也随之而来,处于计算机网络中的应用层。处在TCP协议之上,所以HTTP协议的瓶颈和优化方法,都是基于TCP协议本身
TCP连接需要3次握手
TCP断开连接需要4次挥手
每次建立连接的所带来的延迟时间
等都是可以优化的角度。

②http1.0所做的优化

带宽:现阶段已经解决
延迟:

③http1.1 / http1.0的具体区别
④http1.1和http1.0存在的问题

get/post方法区别

get主要是用来获取资源的
post主要是用来提供和更新服务器上的资源

1)提交的数据

cookie和session区别

Cookie技术是客户端的解决方案,Cookie就是服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息

就是说,当我们访问一个服务器支持cookie的网站时,用户就会提供包裹用户名在内的个人信息传到服务器,然后服务器向客户端回传响应的超文本的同时也会发回这些个人信息,这些信息存放在response head里面,当浏览器接收到服务端的响应之后,浏览器就会将这些信息放在一个指定的位置,这时候客户端再像服务端发送请求的时候,客户端就会将相应的cookie再次发送到服务器,这时cookie信息放在request头里面。
这样的话服务器在接收到客户端浏览器的请求之后,就能通过分析存放在request头中的cookie信息得到客户的判断。从而动态的生成与该客户端相应的内容

过程如图


cookie.png

间接弥补的HTTP协议无状态的不足。

cookie工作原理.png

可以把cookie理解为就是个人身份的标识,可以让服务器知道你是谁

Session是另一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上

客户端与服务器的一系列交互动作就称为Session

session的工作原理
具体区别

Etag / if-None-Match referer

if-None-Match是告诉response可以添加一些ETag进去,当再次请求的时候,比对ETag如果没有发生变化,response会返回状态码304,这时浏览器可以直接使用本地的缓存,大大提升了性能和用户体验
referer就是表示这个请求是从哪个连接来的

上一篇下一篇

猜你喜欢

热点阅读