美文网首页
HTTP协议

HTTP协议

作者: jolanxiao | 来源:发表于2016-08-10 19:08 被阅读0次

    HTTP协议的应用非常普遍,这里做一个简单的总结。

    Web服务:web服务可以认为是大规模的基于client/server模式的分布式信息系统,其结构图<1>所示。

    图<1>

    HTTP 协议:HyperText Transfer Protocol,超文本传输协议。基于TCP实现的一种应用层协议。一次HTTP协议的交互过程如图<2>所示。

    图<2>

    1、URI和URL有什么区别

    URI的全称是uniform resource identity(统一资源标识符)。URL的全称是uniform resource locate (统一资源定位符)。URN的全称是unifrom resource name(统一资源名)。这3者的关系入下图所示。简而言之,URL是URI,URN也是URI。但是URI不一定是URL,也不一定是URN。所有能标志一个资源的都成为URI,其中,从寻址方式(协议)定义的标识方式称为URL【例如ftp://example.org/resource.txt】。从命名编号方式定义的标识称为URN【例如urn:issn:1535-3613】。

    图<3>

    2、web 浏览器地址栏里面的地址是什么?

    我觉得应该用URL更加贴切,虽然用URI也是正确的。web地址栏一般包括了资源的获取方式,http,https,ftp等等。你说它是URI绝对没有错,但是说成URL会更加的贴切。记住,只有包含了或者方式的URI才能称之为URL。web URL的组成格式可概括为:协议-域名(主机:端口)-路径和文件名。这三部分对应HTTP包头格式中协议字段、Host字段、URL字段(严格上来说这个字段不能称之为URL)。在浏览器输入URL后,浏览器会生成相应的HTTP请求报文,向HTTP server发起请求,并等待HTTP server 的回包。一个请求过程如图<4>所示。特别需要注意的是图中的URL指代 /path/file(并非真正意义上的URL)。

    图<4>

    3、HTTP协议的请求格式

    图<5>

    HTTP协议的包格式如图<5>所示。第一行包含三个字段 方法、URL、版本;从第二行开始的格式为 头部域名称:头部域值;每行尾部都要加上\r\n; 包头和包体之间需要额外一个\r\n.一个实例如图<6>。

    图<6>

    引用:

    http://web.jobbole.com/83452/

    https://danielmiessler.com/study/url-uri/

    https://www.ntu.edu.sg/home/ehchua/programming/webprogramming/HTTP_Basics.html

    相关文章

      网友评论

          本文标题:HTTP协议

          本文链接:https://www.haomeiwen.com/subject/skznjttx.html