嵌入式Web项目(三)——HTTP协议详解

      最后更新:2022-04-28 10:48:11 手机定位技术交流文章

      文章目录

      • 概念
      • 该模式以请求和答复为基础。
        • 请求信息
        • 响应信息
      • HTTP协议特点
        • 无状态协议
        • 《HTTP协定》区分了无国籍和联系:留守模式。
        • HTTP1.0和HTTP2之间的差额是零和零之间的差额。
        • HTTP1.1和 HTTP2之间的差额是零和零之间的差额。
      • 工作流程
      • HTTP请求方法
        • GET
        • POST
        • HEAD
        • 其他
        • GET 与 POST 的区别
      • HTTP状态码
      • HTTP请求头
      • HTTP响应头

      概念

      计算机通信网络中两台计算机之间通信必须遵守的规则或原则称为协议。超文本传输协议(HTTP)是一个通信协议,允许将 HTML 内容从网络服务器发送到客户浏览器。
      HTTP协议,是超文本传输协议(超文本传输协议)的简称。它是浏览器和网络服务器(ww = Worldwid Web Web)的详尽通信协议。因特网被用来为万维网网页传送数据传输协议。
      HTTP 协议是一个数据传输协议, 允许将超文本从网络服务器发送到本地浏览器 。它可以是一个更有效率的浏览器, 降低网络传输。 它不仅保证计算机正确和迅速地发送超文本页面, 而且它会选择传输文档的哪个部分先显示 。
      HTTP是一个应用层典型的客户服务器模式包括协议、请求和响应构成。 HTTP是无地位协议。
      所有互联网交易都通过TPCP/IP进行, HTTP协议也不例外。 HTTO协议通常以TCP为基础,但也可以建立在 TLS 或 SSL 上,这就是我们所说的。HTTPS协议另一方面,HTTP协议是加密和安全的。
      在这里插入图片描述"照顾那些被偷的照片, 这些照片通常很容易捕捉"

      HTTP 默认端口为 80, HTTP 默认端口为 443。

      该模式以请求和答复为基础。

      请求信息

      在这里插入图片描述
      返回飞行器的用意是,请求信头与请求数据之间的线间断是为了帮助将请求信头信息与请求数据区分开来。 JSON 格式中的配对键代表请求信头的内容和价值。

      响应信息

      在这里插入图片描述
      答复几乎与索取资料的要求相同。唯一的区别是请求与地位线之间的区别,地位线可根据职能分开。请求包括请求方法和协议版本,答复包括协议版本和身份代码解释。

      HTTP协议特点

      HTTP 协议总是由客户端驱动的请求, 服务器返回答案。 这限制了 HTTP 协议的使用, 并阻止服务器在没有客户端请求的情况下向客户端发送信件 。

      1. 支持客户/服务器模式。支持基本认证和安全认证。
      2. 简单快捷:当服务器要求客户端时,只要请求的方法和传输路径是必需的。GET、HEAD和POST命令广泛使用请求方法。每种方法在客户端和服务器之间建立独特的连接。由于HTTP协议的简单性,HTTP服务器软件很小。因而通信速率很快。
      3. HTTP 支持传输任何种类的数据项。 正在传输的类型方顿泰普已经标记了它。
      4. HTTP 版本 0. 9 和 1. 0 使用非连续连接,客户查询由服务器处理。一旦你收到顾客的回信即断开连接。HTTP1.1 使用连续连接, 而不是为每个网络项目创建新连接 。连接可同时发送许多项目 。这项战略缩短了传输时间(有利于频繁连接)。
      5. 现状:HTTP协议是一份最先进的协议,这意味着它没有处理该问题的记忆能力,缺乏地位意味着如果后续行动需要事先信息,必须重新发送,这可能导致每个连接发送的数据量增加。

      无状态协议

      协议国表示有能力“记住”这一信息传输,供今后传输。
      HTTP 不为下一条连接保存此连接传输的信息, 下一条连接是为了确保服务器的内存 。
      例如,如果客户访问网页,关闭浏览器,重新启动浏览器,然后在网站上签名,服务器不知道客户曾停止过浏览器。
      不允许网络服务器这样做,因为它们同时受到浏览器的多次请求。政府一直试图改善网络服务器的接入, 以提高网络服务器同时访问的处理能力。HTTP协议的最初设计是为了迫使网络服务器提供 HTTP 的答案和文件,不保存收到请求的 Web 浏览器程序中的任何状态信息 。这可能导致浏览器在几秒内两次查看相同的对象。由于它以前已对该信件作出答复,服务器程序没有拒绝第二次服务请求。这是因为网络服务器没有保存关于提交请求的网络浏览器程序的任何信息。因此,HTTP协议无效。

      《HTTP协定》区分了无国籍和联系:留守模式。

      毫无道理地表明协议没有回忆到事情是如何被绕开的,服务器也不知道客户是谁。 另一方面,在服务器上打开网页和在您面前的服务器上打开网页之间没有联系。
      HTTP是一个无国籍的、相互关联的协议,它不排除它维持TCP联系,主要是使用UDP联系(没有联系)。
      HTTP1. 一号是协议默认启用了 Kep- ALive 。保持连接特性,简单的说,当网页打开时,该网页即为完整。用于在客户端和服务器之间发送 HTTP 数据的 TCP 连接将不会终止 。如果客户返回到此服务器的网页, 他/她就能知道发生了什么事情。此已创建的连接将会维持 。
      Kep- Aliver 无法无限期维持连接。 他有一个要满足的最后期限, 可能不同 。服务器软件中设定这个时间。

      HTTP1.0和HTTP2之间的差额是零和零之间的差额。

      1. 最重要的变化是增加了持续连接,这意味着TCP连接将不再因违约而终止。该手册可再用于若干查询。没有必要定义连接: 保持生命力 。客户和服务器在很长一段时间内发现对方没有活动。您可自行选择断开连接 。不过,规范的做法是,上次询问客户是什么时候发送连接: 终止,服务器必须明确结束 TCP 连接 。
      2. 1.1版本还引入了管道机制,即客户可在同一 TCP 连接内同时提交若干请求。这提高了 HTTP 协议的效率。队头堵塞
      3. HTTP1.1 允许支持一部分传输材料。 HTTP1.1 允许支持文件的间歇功能。

      HTTP1.1和 HTTP2之间的差额是零和零之间的差额。

      • HTTP/2 是一个完整的二进制协议,其中头信息和数据是二进制的,统称为框架:头信息框架和数据框架。为了提高传输性能,在应用层和传输层之间增加一个二进制层。
      • 多电路:通过重复使用 TCP 连接,客户和浏览器可以同时传递许多请求和答复,而不必相继匹配,从而防止“团队阻挠”。
      • 要确定属于请求的数据集,请使用数据流。对于每一项请求或答复,HTTP/2将填写所有数据包。称为一个数据流。每个数据流用一个独有的编号确定。数据包发送的时候,纳入数据流识别码至关重要。它用来表示它是数据流的一部分。另外还规定,客户传输的数据流,ID一律为奇数,服务器发出的,ID为偶数。
      • 最初使用了压缩头部信息的技术。 头部信息使用 hpack 算法压缩, 然后更快地传输到整个网络中 。
      • 服务器推进: HTTP/2 允许服务器在客户没有请求的情况下向客户提供资源, 即服务器推进 。

      工作流程

      • 浏览器输入 DNS 服务器, 将 URL 中的 IP 地址解释为域名 IP 地址 。
      • 在解析 IP 地址后, 使用 IP 地址和默认端口 80 与服务器连接 TCP 。
      • 浏览器执行 HTTP 要求读取文件( 在域名结尾的 URL 中的文件) 。请求三次作为第三次TCP握手的数据传送到服务器。
      • 服务器通过向浏览器发送 HTML 内容对浏览器请求的回复 。
      • TCP 连接释放(须经同意)
      • HTML 文本由浏览器解析并显示。

      用到的协议:
      DNS 协议将域名转换为 IP 地址 。
      HTTP 协议:在重新连接后,使用 HTTP 协议访问网页。
      TCP 协议: 服务器连接
      TCP连接到利用IP协议传输数据再网络。
      OSPF协定:开放最短路径优先协定,路由者轮调议定书
      路由器与服务器连接的ARP协议要求将IP地址翻译到MAC地址。

      HTTP请求方法

      GET

      请求将转到适当的资源。

      POST

      向请求处理的核定资源提交数据(例如,POST请求可能导致产生新的资源或改变现有资源(例如,提交表格或上载文件)。 数据载于请求机构。

      HEAD

      服务器的回答符合 Get 要求, 只是..响应体将不会被返回这种方法可以收集答题头部的元信息,而不必发送完整的答复内容。 它经常用来评估超链接的有效性、可访问性以及最近对超链接的修改。

      其他

      知乎

      GET 与 POST 的区别

      1. GET所提供的资料将在链接后出现。,以?分割URL和传输数据,参数之间以&相连。如EditPosts.aspx?name=test1&id=123456 。POST方法是把提交的数据放在HTTP包的Body中。
      2. 通过 GET 提供的数据的大小限制在最多1,024字节(由于浏览器对 URL 长度的限制),但通过 POST 提交的数据是无限的。
      3. HTTP 方法需要使用请求。 查询键以捕捉变量值, 而 POST 使用请求。 从中获取变量值 。
      4. 提交数据的GET方法,这是一个安全问题,这是一个安全问题。比如一个登录页面,当使用 Get 方法发送数据时,用户名和密码将在 URL 中显示。如果网页可以缓存,或有人可以进入该系统,使用该系统是可行的。历史记录可用于获取用户的账号和密码。

      HTTP状态码

      在这里插入图片描述

      HTTP请求头

      在这里插入图片描述

      HTTP响应头

      在这里插入图片描述

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/22950.html

          热门文章

          文章分类