HTTP第二篇【HTTP方法、不保存状态、提升传输效率】

告知服务器HTTP意图的方法

咱们若是开发过Web程序的话,咱们知道经常使用的提交方式有POST和GET方法浏览器

咱们也知道GET是用来获取数据的,POST是用来提交数据的。服务器

其实HTTP协议中还支持着其余的方法,好比:Input、Delete、OPTIONS不少这样的方法。而因为经常使用,因而咱们也可能仅仅知道GET和POST方法了。cookie

HTTP提供方法的目的就是为了告知服务器该客户端想进行什么操做。当HTTP是OPTIONS方法的时候,服务器端就会返回它支持什么HTTP方法。编码

HTTP是不保存状态的协议

HTTP是无状态的,也就是说,它是不对通讯状态进行保存的。它并不知道以前通讯的对方是谁。这样设计的目的就是为了让HTTP简单化,可以快速处理大量的事务!设计

可是,咱们常常是须要知道访问的人是谁,因而就有了Cookie技术了。图片

  • 要是服务器端想要记住客户端是谁,那么就颁发一个cookie给客户端
  • 客户端把Cookie保存在硬盘中,当下次访问服务器的时候,浏览器会自动把客户端的cookie带过去。
  • 就这样,服务器就可以知道这家伙是谁了。

持久链接

在HTTP1.0的时候,每一次进行HTTP通讯就会断开一次链接。若是容量不多的文本传输是没有问题的。可是若是咱们访问一个网页,该网页有很是多的图片。一个图片就算上一个HTTP请求了。那么在中途中就不断地创建TCP链接、获取图片、断开TCP链接。事务

这样是很是浪费资源的,所以在HTTP1.1版本,就是持久链接了。一次HTTP链接可以处理多个请求资源

持久链接为“管线化”方式发送成为了可能:在一次HTTP链接里面,不须要等待服务器响应请求,就可以继续发送第二次请求开发

编码提高传输效率

在说明以前,首先咱们要知道什么是实体主体效率

  • 实体主体就是做为数据在HTTP中传输的数据

通常地,实体主体能够等价为报文主体,报文主体是HTTP中的一部分

咱们若是不使用任何手段,服务器返回的数据实体主体是原样返回的。咱们可使用两种方式来提升传输效率

  • 使用压缩技术把实体主体压小,在客户端再把数据解析
  • 使用分块传输编码,将实体主体分块传输,当浏览器解析到实体主体就可以显示了。

咱们若是在下载东西的过程当中断了,按照之前咱们是须要从新下载的,可是如今能够在中断中继续下载。咱们能够使用到获取范围数据,这种叫作范围请求

这种请求只会下载资源的一部分。

  • 好比个人图片下载到一半了,咱们只须要下载另外一半就能够组成一张完整的图片了。那么请求的时候请求没有下载的一部分便可。
相关文章
相关标签/搜索