HTTP|HTTP是什么?是怎么发展的?

首先我们来了解一下什么是HTTP协议
HTTP:HyperText Transfer Protocol,中文超文本传输协议;
顾名思义,主要就是用于传输超文本的,相当于一条海上运输的贼船。
超文本:指的是带有超级链接的文本,相当于这条贼船运输的特殊货物,这些货物是什么呢,是任意门。
超链接:基于此种链接能够在文档间实现跳转,也就是能通向其他空间的任意门。
 HTTP|HTTP是什么?是怎么发展的?
文章图片

http/0.9
在当时,http协议广泛应用的版本为0.9,那个时候的Web服务仅支持纯文本(纯文本:由纯ASCII字符组成的文本),这种纯文本还包括超链接,这种超链接也是表现为纯文本形式的,但这种文本比较独特,因此称为超文本(HTML)。
 HTTP|HTTP是什么?是怎么发展的?
文章图片

HTML:HyperText Mark Language,超文本标记语言;这是用于编写(开发)超文本的语言
之所以叫标记语言是因为在这种语言当中事先规定好了将语言通过标签的形式给它加上一些特殊的标记,而这些文本在被用户客户端浏览器解析时能够将这些标记解析为字体格式或一些表现属性,如:Title。通俗的比喻,HTML是暗号,每个暗号都有一段特殊含义,例如:某些交易行业有一些暗语,“‘空’是有空的意思,‘路’是在路上,‘见’是见到了客人,‘喜’是被客人看上了,‘收’是完成交易收款,‘回’是返回。”
 HTTP|HTTP是什么?是怎么发展的?
文章图片

Browser:浏览器,客户端代理的一种,通过http协议可以访问服务器端提供的超文本,而Browser能够在这些文本显示的时候将标签解析为对应的修饰的属性格式。相当于暗语翻译机。
当Web服务流行开来之后,全球能够提供Web服务的服务器有很多个,那么每一台服务器上都可以提供各种各样的文本,甚至于两台服务器上提供的文本的名字可能是一样的。就好像流行给每个人取名字以后,大家都会争相给娃取名字,于是像张杰、张伟这样的名字遍布全国各地,那么如果要去民政局登记结婚,怎么区分是山东的张伟和李小姐结婚了还是湖北的张伟呢?
 HTTP|HTTP是什么?是怎么发展的?
文章图片

因此仅靠文件名进行区分文档是不可靠的。于是就出现了向URI这样的机制(虽然URI并不是专门为Web诞生的),URI是很好的能够让客户端识别互联网上不同文档的机制。

URI:Uniform Resource Indientifier,统一资源标识符;
用于定义全局范围内标记唯一的定位一种资源访问路径的方式(命名方式);(不一定是互联网上的,全球的,包括互联网在内的可以在全局唯一引用某一个独立的资源的命名方式)
统一资源标志符URI就是在某一规则下能把一个资源独一无二地标识出来。还是用取名字做例子,假设这个世界上所有人的名字都不能重复,那么名字就是URI的一个实例,通过名字这个字符串就可以标识出唯一的一个人。现实当中名字当然是会重复的,所以身份证号才是URI,通过身份证号能让我们能且仅能确定一个人。
URL:Uniform Resource Locator,统一资源定位符(URI的子对象、子集)
用于描述在互联网上互联网资源的统一表示格式。
也拿人做例子然后跟HTTP的URL做类比,就可以有:人物住址协议://地球/中国/湖北省/武汉市/洪山区/某道路/某楼栋/403号办公室/张伟.人可以看到,这个字符串同样标识出了唯一的一个人,起到了URI的作用,所以URL是URI的子集。URL是以描述人的位置来唯一确定一个人的。在上文我们用身份证号也可以唯一确定一个人。对于这个在武汉的张伟,我们也可以用身份证号:123456789来标识他。所以不论是用定位的方式还是用编号的方式,我们都可以唯一确定一个人,都是URl的一种实现,而URL就是用定位的方式实现的URI。
回到Web上,假设所有的Html文档都有唯一的编号,记作html:xxxxx,xxxxx是一串数字,即Html文档的身份证号码,这个能唯一标识一个Html文档,那么这个号码就是一个URI。而URL则通过描述是哪个主机上哪个路径上的文件来唯一确定一个资源,也就是定位的方式来实现的URI。
格式:protocol://HOST:port/path/to/file
HTTP方法:(获取资源的方式)
http/0.9时只有一个方法:
GET,它表示直接从服务器上获取文档到本地浏览器并予以展示(不是简单的文件传输,而是超文本的文件传输);
【 HTTP|HTTP是什么?是怎么发展的?】在http升级到1.0之后有了更多的方法:
PUT:从远程服务器上直接获取文件到本地,与POST相对应
POST:与GET相对应,通过表单提交数据到服务器上去;
DELETE:在远程服务器上删除文件,与PUT相对应;
HEAD:只返回首部,不响应主体;
简单来说,get是七八十年代实打实的通过相亲方式认识接触的女朋友;而科技发展了以后我们有了手机,put是从聊天软件诸如momo、tantan这样的应用里撩到的女朋友;有了女朋友你得给她花钱了吧,所以post是陪女朋友逛街给她买单;delete就是在聊天软件上你和“女朋友”聊的不爽了要分手,你就把她删除拉黑了。


推荐阅读