前端进阶必会的网络HTTP协议系列一

前面讲的前端三大基石html、css、js学的再好,写出的页面再牛,如果没有人能看到,那无异于孤芳自赏。而互联网的优势和价值在于连接,让更多的人看到,才能让技术产生价值。现实世界中的人相互沟通连接从而构成了丰富多彩的世界,语言是人们相互交流的桥梁。类似的,网络世界中的终端,无论是服务器和还是浏览器,就跟一个一个人一样,终端之间的联接和交流构成了纷繁复杂的互联网世界,终端之间的最重要的语言就是今天要讲的HTTP通信协议。

以上是一种通俗的理解,但我认为本质原理都差不多,下面我们就来盘盘传说中的HTTP。

http

HTTP是啥?

HTTP是英文HyperText Transfer Protocol的缩写,翻译过来就是超文本传输协议。HTTP是目前互联网上应用最为广泛的一种网络协议。HTTP的前两个字HT与HTML的前两两个字以及含义都是一样的,事实上当初设计HTTP目的也就是为了提供一种发布和接收HTML页面的方法。而协议可以简单的认为是沟通双方相互认可和能理解的一个约定(标准)的集合。

HTTP发展历史

相对终端层面的互联网应用以及浏览器版本的快速发展和迭代,http的版本迭代看起来非常克制,从问世到现在将近30年的时间,总共只出现了4个版本,真正产生较大影响力的也就2个版本,目前最新的版本是2.0。

0.9 ——探索

HTTP是1990年出现的,之所以没有将最初始的版本命名为1.0,可能也是因为对当时的人们来说,互联网的一切都是未知,这仅仅是在科技最边缘的一次试探。

1.0 ——问世

有了前面的积累,1996年的五月版本被正式命名为HTTP1.0,并正式对外公布。这是一次成功的探索,因为这个版本的协议标准至今仍被广泛使用。

1.1 ——改进

紧接一年以后,1997年1月公布了HTTP1.1版本,从命名来看,这是对之前版本的一种改进,使其变得更加完善,而且这个仍然是目前主流的HTTP协议版本。

2.0 ——发展

之后随着互联网应用的发展,新的问题和要求不断涌现,目前最新的版本是2015年5月公布的2.0版本,2.0版本在性能和数据传输上更具优势,目前已有少量站点使用,前景可期。

连接

HTTP和TCP/IP

TCP/IP的并没有很明确,有人把计算机终端通信相关联的协议集合起来总称为TCP/IP,也有人认为TCP/IP就是指TCP和IP两种协议,也有其他人认为TCP/IP是在IP协议的通信过程中使用到所有协议族的统称。

不论是那种说法,TCP/IP把通信过程分成4层:应用层、传输层、网络层、链路层 。基于这个四个分层,则形成了从客户端和服务端的一次完整的信息传输过程。这一过程包括找IP,确认、响应处理等阶段,其中涉及到知识后面单独分开介绍。

需要特别说明的是,网络协议不只HTTP一种协,还有如FTP(文件传输协议)、SMTP(简单邮件传输协议) 、SCTP(流控制传输协议)等。

HTTP是一次性的,也就是一种无状态协议,不会保存状态。具体来说,HTTP协议对于完成的请求或者响应都不做持久化处理,用完结结束,要用再重新请求。

目前正火的HTTPS是在HTTP之上加入了SSL/TLS协议,用于数据的加密传输,提高数据的安全性。

本文先在外围大概了解了HTTP,HTTP是现在前端的基础,是必须掌握也是前端进阶必会知识。开启前端网络探索之路,后续陆续更新,欢迎大家指正。

http