HTTP协议是什么?详细解读HTTP看完还不懂你来找我

      最后更新:2022-05-03 05:14

      本条将包括以下内容:

      • HTTP协议解读
      • 与HTTP相关组件
      • 与HTTP相关协议
      • HTTP组成
      • HTTP协议优缺点

      HTTP协议解读

      HTTP(文本传输协议)是超文本传输协议(HTTP)。超文本传输协议可分为三个词:超文本、传输和协议。他们的友谊如下:

      这三类中的每一类都有一个解释:

      超文本

      文本的语义性因以下事实而增加:它被称作超文本(Hypertext),通过在两台计算机之间传递基本文本,然后希望在两台计算机之间传递图片、音频、视频,甚至点击文本或图片以创建超链接,来扩展它。

      传输

      两台计算机将连接到通信中,我们储存的超文本将拆解成二元数据包,由传输承运人(如共轴电缆、电话线、纤维电缆)负责从一个计算机终端向另一个计算机终端发送二元数据包。

      协议

      网络规程是管理网络(包括互联网)信息传输和管理的一些标准。

      与HTTP相关组件

      协议由网络设计师以分层(层)方式组织。每个协议代表不同的等级模式。在最高层,每个级别都提供其服务。这被称为服务模式。协议堆栈指每一层次的所有协议。物理层、链层、网络层、传输层和应用层由互联网礼宾办公室组成。我们从上到下研究其概念。也就是应用层 -> 物理层的方式(了解)。

      应用层

      应用层是保持网络应用程序和网络协议的一层,互联网上的应用层包括各种协议,如HTTP、SMTP(电子邮件传输协议)、FTP(终端系统文件上传协议)和域名分析的DNS(域名系统)协议。

      传输层

      在应用断点之间传递应用信息方面,有两个基本传输协议:TCP和UDP。

      当TCP连接起来时,它能够管理和确认信息的到来,它提供一种堵塞机制来控制网络传输,在网络出现堵塞时,有效地减缓传输速度;它能够管理和确认信息的到来;它提供一种堵塞机制来控制网络传输,在网络堵塞发生时,有效地减缓传输速度。

      UDP 协议为其应用程序提供断开的服务。 它不稳定, 缺乏交通控制, 也没有交通拥堵控制。 运输层子节被称为“ 区块 ” 。

      网络层

      网络层负责将称为数据仪的网络层从一个主机传送到另一个主机。 IP协议是网络层的一个非常重要的协议。 网络层需要网络层的所有互联网组件来运行IP协议。

      链路层

      将各组从一个节点(主机或路由器)移至另一个节点,就其服务而言,网络层必须依赖链层。Ethernet、WiFi和DOCSIS的电缆接入协议都是链接的例子。由于数据通常通过多条线从来源传送到目的地,可以想象数据将从来源传送到来源。沿这条路线,一个数据包可由若干链级协议处理。链层的单元格称为框架。

      物理层

      虽然链层用于将框架从一个端系统移到另一个端系统,但将框架从一个端系统移到另一个端系统是不可行的。物理层的任务是将一个节点的一小块框传送到另一个节点。链层协议仍在物理层协议中使用。这些协定涉及真正的有形运输媒体。例如,以太网使用各种物理层规程,例如双层铜线、coax电缆、光纤等。

      以下是五层网络协议的地图:

      与HTTP相关协议

      HTTP是一项申请级协议,要求其他层级合作完成信息流动,并要求下列协议合作完成HTTP的请求和答复:

      TCP/IP

      TCP/IP称为一组。什么意思呢?TCP/IP是一个包包,不仅包括TCP和IP协议。它是一套网络通信议定书的总括术语。TCP/IP协议包括两项基本协议。UDP、IPCMP、ARP和其他议定书也得到支持。这加起来就是一个复杂但结构完善的协定。

      TCP的全名是《传输控制议定书》。它指的是TCP/IP协议套件。TCP是HTTP使用的通信协议。这是因为TCP是一种可靠的安排。可靠性确保数据不会被销毁。

      IP协议(通常称为互联网协议缩写)主要处理将双方定位于对话的难题,IP协议使用IP地址识别互联网上的任何机器。

      DNS

      域名系统是 DNS 的全名 。缩写:DNS),它作为分布式数据库,用于测绘域名和IP地址。可以更广泛地提供因特网。比如:www.google.com -> 193.XXX.XXX.XXX

      URI / URL

      访问Google网站的Google.com网址。 所提供的地址格式必须符合资源研究所的标准。

      URI的完整任期是(通用资源标识符),中文名称是统一资源标识符,它允许您在互联网上独家识别资源。

      URL的全名是通用资源定位器, 中文是统一的资源定位器, 我们通常称之为网站, 其实是 URI 的子集。

      HTTP报文

      • 开始描述所寻求或答复的基本信息;
      • 标题(标题):以关键价值格式对报告作更广泛的解释。
      • 信息文本(实体):数据的实际传输,数据并非总是纯文本,但可以是照片、电影等二元数据。

      以行和头字段开始创建请求或回答头。它被称为信头, 信息文本也被称为一个实体。称为 body。HTTP协议要求使用信头,但是,信头和身体之间必须有一条空线。

      举个例子:
      这篇文章是我们特别报导全球之声在线的部分内容。 对不起,有些学校。 我不知道你在说什么, 但我不知道你在说什么, 但我不知道你在说什么,

      信件的第一行包含三个字段:方法、 URL 和 HTTP 版本。

      HTTP 请求方法

      • GET 方法用于请求访问 URI 识别的资源。 特定资源在服务器终端处理完毕后提供响应内容 。
      • 表格的内容由一个POST转移实体发送,该实体利用POST传递实体信息。
      • PUT 传输文件,为了发送文件,使用了PUT技术。类似于 FTP 协议的文档上传,这是首次向法院提交请愿书,要求将文件列入请求书正文,并要求将文件列入请求书。它被保存到 URI 指定的位置 。 但是,鉴于HTTP PUT方法缺乏自己的核查机制,任何人都可以提交档案,有安全问题,等等。因此,一般网址没有采用这一战略。如果您想要匹配 Web 应用程序的校验方法,相反,REST(代表国家转让)被用来建造建筑。这篇文章是全球之声在线特稿的一部分。可访问 PUT 方法 。
      • 为了验证URI的真实性和资源更新日期,HEAD收到了对第一部分的答复,但没有回到报告的主要部分,正如HEAD和Get方法机构确认URI的真实性以及资源更新的日期一样,HEAD收到了对第一部分的答复,但没有回到报告的主要部分,HEAD和Get方法机构也是如此。
      • 与 PUT 相对, DELETE 删除文件, 并使用 DELETE 方法删除文件。 DELETE 方法按照 URI 的要求删除给定资源 。
      • 选择方案调查包括寻求资源支持的方法,以满足以乌拉圭为基地的请求。
      • TRACE跟踪路线,又称TRACE技术,使网络服务器能够将先前的请求归还客户。
      • " 联系 " 公司要求签订隧道协议,以便与该机构连接。在通过CONNECT方法与代理服务器交谈时,必须建立隧道。实施TCP通信隧道规程。SSL 代表安全袜子层 。TLS(运输层安全)和保险套层协议确保传输水平的安全,通信通过网络隧道分类和传输。

      GET和POST方法是最经常使用的,而其他方法目前还不清楚。

      HTTP 请求的 URL

      全域名解析的 URL :
      http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument

      • http://converse with the service to used what procession to use. http:// http:// complete with the service to used what proprom. http:// http:// complete with the service to used. 与浏览器反向, 与浏览器反向, 与关于使用哪个协议的浏览器对应 。
      • 这篇文章是我们特别报导全球之声的一部分。 我不确定您在说什么, 例如。 这是一个域名, 主机应该指定网络的主机应该提出请求。 请求也可以直接启动到主机的 IP 地址 。
      • 为了在两个东道方之间建立TCP连接,港口需要两项要求。主机 + 端口,这篇文章是全球之声在线特稿的一部分。如果使用 HTTP 协议的标准端口( HTTP 80) 访问网络服务器,HTTPS 443使用户能够获取其资源。则通常省略此部分。否则,港口就是必须存在的联合资源倡议的组成部分。
      • 网络服务器上的资源路径是 / path/ to/myfiles.html 。 从端口后面的第一个路径开始, 到吗? 在端口之前, 每个中间符号代表一个等级( 上下) 关系 。
      • 查询参数

      ?key1=value1&key2=value2 是提供给 Web 服务器的额外参数。如果是 GET 请求,一般带有请求 URL 参数,如果是 POST 请求,则不会在路径后面直接加参数。

      • 锁定点是资源内部的书签。 锁定点 # InTheDocument 某处是资源本身某部分的锁定点。

      请求头部

      比如
      这篇文章是我们特别报导全球之声在线的部分内容。 对不起,有些学校。 我不知道你在说什么, 但我不知道你在说什么, 但我不知道你在说什么, 但我不知道你在说什么,

      主机: ww.hosto.comI'm 不确定您在谈论什么。 eduConnection: closeUser-agent: Mozilla/ 5. 0Accepy-langues: fr 副本代码
      • 主机: 代表对象的主机 。
      • 连接: 关闭 表示浏览器必须告知服务器它正在使用非持久性连接。 它还要求服务器在向对象提供答案后杀死连接 。
      • 用户代理 : 这是请求信头, 告知网络服务器浏览器为 Mozilla/ 5. 0 类型, 即 Firefox 浏览器 。
      • 接受语言 通知网络服务器浏览器想要用法文获取此项目 。

      HTTP请求信头分为四类:通用信头、请求信头、响应信头和实体信头。

      通用标头

      日期、缓存控制、连接日期是三大基本通用标语。

      该日期出现在请求和答复标记中,其基本代表性如下:

      日期:2015年10月21日,星期三,2015年10月21日,2015年7月7日:28:00GMT副本代码

      Cache-Control

      缓冲控制既可在请求时发生,也可在响应标记时发生。缓存控制更灵活。尽管它是一个通用符号,然而,请求标记有其他特点。其中一些是回应新闻报导。易腐性、阈值、重新校正和重新加载以及其他属性属于关键类别。

      Connection

      连接决定当当前业务完成时网络是否关闭( 一次握手和四个波浪) 。 连接分为两类: 长期和临时。 交易完成时不终止网络连接

      连接: 复制即行副本代码

      另一种类型的连接是一种非持久性连接,即交易完成后终止网络连接。

      复制要连接的代码

      实体标头

      实体页眉是 HTTP 信头, 用于定义信息主体的内容, 用于或响应 HTTP 请求, 实体页头包括 Head- Length、 内容- Language 和 内容- Encording 。

      • 内容-要素实体以传送给接收方的字节具体说明实体专题的大小。
      • 例如,Enter-Language实体页头界定客户或服务所接受的语言。
      中央语言:取消中央语言:美国统一代码 中央语言:DE, EN-CA
      • 另一个麻烦的特征是编码中心。该实体的页眉用于压缩媒体类型。中央编码指定了适用于该实体的代码。Gzip、压缩、淡化和身份是共同内容代码的例子。这一特点既适用于请求,也适用于答复。
      接受- 编码: gzip, deflate// 对应信头内容编码: gzip// reply 头复制代码

      请求标头

      GET /home.html HTTP/1.1
      Host: developer.mozilla.org
      User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:50.0) Gecko/20100101 Firefox/50.0
      Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      Accept-Language: en-US,en;q=0.5
      Accept-Encoding: gzip, deflate, br
      Referer: https://developer.mozilla.org/testpage.html
      Connection: keep-alive
      Upgrade-Insecure-Requests: 1
      If-Modified-Since: Mon, 18 Jul 2016 02:36:04 GMT
      If-None-Match: "c561c68d0ba92bbeb8b0fff2a9199f722e3a621a"
      Cache-Control: max-age=0 
      
      复制代码

      Host

      主机请求指定服务器的域名和(可选择)服务器的监听 TCP 端口号 。

      Referer

      HTTP 引用器属性是请求页眉的一部分, 告诉服务器页面从何处链接 。

      If-Modified-S***rong>

      HTTP的 if- modified- sin 附加条件 :

      • 返回 200, 服务器只将在提供日期最后一次更新资源后以200个状态提供所请求的资源 。
      • 如果请求自提出以来没有更新,反应代码将为304,不会得到答复。

      如果- 经修改的 Sin 经常与 If- Nobody- Match 一同使用 。如果已修改,则用于验证由代理商或客户控制的当地资源。应定期更新资源获取情况。确认第一个领域,即最后修改后,将揭示这一点。

      换句话说,如果服务器资源在上次修改后更新,服务器将返回200,但如果最后一次修改后不更新资源,服务器将返回304。

      校对:Mon, 18 Jul 2016 02: 36:04格林尼治标准时间

      If-None-Match

      HTTP 请求信头 If- no- one- Match 将请求附加条件 。就GET和HEAD方法而言只有当服务器缺少与所提供资源对应的ETag时,服务器返回要求的资源, 状态为200 。 对于其他方法,如果ETag与可获取资源最后清单中的任何数值不符,才会处理请求。

      如果无匹配: 复制代码“ c561c68d0ba92bbeb8b0ff2a9199f722e3a621a”

      内容协商

      内容咨询方法是指客户和服务器对所要响应的资源内容的表示,然后是向客户提供最适当的资源。内容咨询方法根据资源反应的语言、字符集、编码等等来评估内容咨询。

      内容磋商有三种:

      • 以咨询服务为服务

      这是通过服务器端的内容讨论完成的。 服务器端会自动处理第一个字段 。

      • 以客户为中心的协商

      对于内容会议,客户进行这类协商。

      • 公开磋商

      这是一种由服务器驱动和客户驱动的组合,也是两者之间内容磋商的一种手段。

      接受、接受-记录、接受-编码、接受-语言和内容-语言是内容咨询的最常见形式。

      Accept

      接受 HTTP 信头请求告知客户他们可以理解的 MIME 类型 。

      MIME(多用途互联网邮件交易所):MIME(多用途互联网邮件交易所)是具体说明信息内容类型的互联网标准。MIME信息可包括文字、图形、音频、视频和其他具体应用程序的数据。
      复制代码

      文本文件:文本/html、文本/计划、文本/css、AP/xhtml+xml、AP/xml

      图片格式包括图像/jpeg、图像/gif和图像/png。

      视频格式包括视频/录像和视频/速到时间。

      二进式应用程序文件: 应用程序/ oct- 流、 应用程序/ zip

      例如,如果浏览器不允许显示 PNG 图像, 则接受时不显示图像/ png 。 相反, 它提供可以处理的图片类型, 如图像/ gif 和图像/ jpeg 。

      使用 q 属性, 通常的 mime 类型也会被使用。 q? q 到底是什么重量 。

      接受文件类型: 文本/ html, 应用程序/ xhtml+xml, 应用程序/ xml;q=0. 9, */ *;q=0. 8

      如果您想要排列显示的媒体类型的优先次序, 请使用 q = 来添加重量; 默认值为 1, 当没有显示重量时。 图片由 Flickr 用户 pic. twitter. com 提供 。

      q

      MIME

      1.0

      text/html

      1.0

      application/xhtml+xml

      0.9

      application/xml

      0.8

      * / *

      Accept-Charset

      接受字符集属性表示服务器在窗体数据处理中接受的字符集 。

      接受字符设置属性允许您提供服务器必须支持的一组字符,以便正确解析窗体的数据。

      Accept-Language

      第一个参数 Accept-Language, 将您可以处理的自然语言集( 中文、 英文等) 以及自然语言集的相对重要性通知服务器用户代理 。

      接受语言: en-US, en;q=0。 Copy 代码 5

      响应标头

      HTTP 响应中可能使用的 HTTP 信头是响应信头 。答复中并非所有迹象都是反应迹象。还有几件事我们已经提到过。反应信号中既有通用标语,也有实际标语。例如,内容-要素是实体的首脑。但是,在这种情况下,这些实体的查询也称为回复主管。让我举一个答案的例子。

      200 OK
      Access-Control-Allow-Origin: *
      Connection: Keep-Alive
      Content-Encoding: gzip
      Content-Type: text/html; charset=utf-8
      Date: Mon, 18 Jul 2016 16:06:00 GMT
      Etag: "c561c68d0ba92bbeb8b0f612a9199f722e3a621a"
      Keep-Alive: timeout=5, max=997
      Last-Modified: Mon, 18 Jul 2016 02:36:04 GMT
      Server: Apache
      Set-Cookie: mykey=myvalue; expires=Mon, 17-Jul-2017 16:06:00 GMT; Max-Age=31449600; Path=/; secure
      Transfer-Encoding: chunked
      Vary: Cookie, Accept-Encoding
      x-frame-options: DENY
      
      复制代码

      响应状态码

      这项请求,从第2xx项开始,得到了成功答复。

      状态码

      含义

      200

      成功响应

      204

      请求已成功完成,但没有资源可供退回。

      206

      对含有Fontent-Range范围实际内容的部分资源的答复。

      一切从3x开始,表明必须采取进一步行动满足请求。

      状态码

      含义

      301

      永久性再定向,表示所要求的资源已重新分配给非洲资源研究所,现有的非洲资源研究所资源今后应加以利用。

      302

      暂时调整方向。 状况代码表明,所要求的资源已分配给一个新的资源研究所,希望这次使用者能够使用新的资源研究所的接入。

      303

      当需要资源时,如果有另一股URI,则状况代码表明,应当使用GET方法来瞄准所要求的资源。

      304

      当客户提交有条件请求时,服务器提供访问资源的机会,但不符合状态代码显示的条件。

      307

      暂时调整,地位法相当于302号

      4xx的答复显示,过失是由客户造成的。

      状态码

      含义

      400

      状态代码显示请求中存在合成问题。 当发生错误时,请求在请求内容被更正后被回绝 。

      401

      状况代码表明,请求必须使用HTTP认证(BASIC认证、DIGEST认证)进行认证。

      403

      状态代码显示服务器拒绝访问所请求的资源。

      404

      状态代码表明,请求的资源无法在服务器上找到。

      以 5x 开头的响应符号表示服务器问题 。

      状态码

      含义

      500

      此状态代码显示,在处理请求期间,服务器端发生了一个问题。

      503

      此状态代码表示服务器暂时超载或进行停机维护,无法处理请求。

      HTTP协议优缺点

      HTTP 的优点

      • 简单灵活易扩展

      HTTP 协议是直截了当的。 其基本组成部分是一个页眉和一个机构, 其页眉信息以简单的文本格式 。

      HTTP协议的好处是更易于适应和可扩展。

      HTTP协议的每个关键组成部分,如请求方法、 URI、 状态代码、 发源词、 标题字段等等,尚未建立, 使开发商能够在其闲暇时调整、 扩展或解释, 并为浏览器和服务器提供最大程度的信心和自由。

      • 应用广泛、环境成熟

      几乎所有编程语言都有HTTP呼吁图书馆和外围发展测试工具,因为交叉语言、交叉平台的自然效益,而且很容易实现其本身的基本品质。

      • 无状态

      有一些好处和缺点。 控制服务器没有内存能力, 记录状态信息不需要额外的资源, 这不仅是为了更容易, 也是为了减轻服务器的压力, 并允许服务器使用更多的 CPU 和内存来提供外部服务 。

      HTTP 的缺点

      • 无状态

      服务器的存储能力很小,因此无法支持需要反复步骤的服务运行。 每次必须要求提供识别信息,必须提出多余的数据传输,从而产生Cookie技术。

      • 安全性

      协议中的电文(更具体地说,信头元素)没有在明确传输中使用二元数据,而是基本、可读文本形式。

      二元协议的比较,如TCP、UDP和一个新的协议。它的优点显而易见,没有必要使用任何第三方软件。使用浏览器Wiresark或tcpdump来抓包时,用肉眼来观察或改变是简单易懂的这确实帮助了我们的调试进程发展。

      当然,有些缺陷,如不安全,允许监听和窃听,也很难判断报纸是否经过编辑,因为无法确定对话双方参与者的身份。

      总结起来即:

      1. 请求未明确加密;
      2. 即使报告已经修正,而且不详,也不会有任何大麻;
      3. (b) 未验证身份,这很容易导致中间攻击;


      船长写了这个
      http://juejin.com/cn/pott/7044237905346568

      如果贵国认为这份文件有用,请提请贵国注意该文件,以便予以支持。

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类