JavaWeb课程系列

第7章 HTTP协议

1.简介

1)HTTP超文本传输协议 (HTTP-Hypertext transfer protocol),是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。它是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。

2)HTTP协议的发展历程

超文本传输协议的前身是世外桃源(Xanadu)项目,超文本的概念是泰德˙纳尔森(Ted Nelson)在1960年代提出的。进入哈佛大学后,纳尔森一直致力于超文本协议和该项目的研究,但他从未公开发表过资料。1989年,蒂姆˙伯纳斯˙李(Tim Berners Lee)在CERN(欧洲原子核研究委员会 = European Organization for Nuclear Research)担任软件咨询师的时候,开发了一套程序,奠定了万维网(WWW = World Wide Web)的基础。1990年12月,超文本在CERN首次上线。1991年夏天,继Telnet等协议之后,超文本转移协议成为互联网诸多协议的一分子。

当时,Telnet协议解决了一台计算机和另外一台计算机之间一对一的控制型通信的要求。邮件协议解决了一个发件人向少量人员发送信息的通信要求。文件传输协议解决一台计算机从另外一台计算机批量获取文件的通信要求,但是它不具备一边获取文件一边显示文件或对文件进行某种处理的功能。新闻传输协议解决了一对多新闻广播的通信要求。而超文本要解决的通信要求是:在一台计算机上获取并显示存放在多台计算机里的文本、数据、图片和其他类型的文件;它包含两大部分:超文本转移协议和超文本标记语言(HTML)。HTTP、HTML以及浏览器的诞生给互联网的普及带来了飞跃。

3)web运行原理

我们浏览器和服务器要沟通,都是类似发信件的方式。很多的“信件”在网络之间传输。

这些信件必须按照一定的格式进行书写,才能被彼此之间识别,客户端服务器本来就是两个不同的东西。

这个国家的每个人都学习编程,因为它教你如何思考。——乔布斯

4)tcp三次握手:

为什么要有tcp的三次握手,因为我们浏览器和服务器要通信,必须首先建立连接,在这个连接上进行数据发送工作。所以有三次握手。

就像两个陌生人见面要说话。

甲:你是那个xxx吗?

乙:哦,对,我是。你就是那个xxx吧。

甲:恩,是的。

(握手,开聊!)