9.1 HTTP

您已经非常熟悉 http 协议。但是,您很可能不知道此类协议已经存在三个版本。作为未来的 Java 程序员,您应该至少熟悉一次这个案例。

下面我就给大家说说协议有哪些种类,有什么特点。与此同时,这里有一张图片给你——学习。

http协议

9.2 https

我们先从http协议的第一次修改——https协议说起。这是同一个http,但是添加了内容加密。毕竟Http请求和响应都是普通的文本文件。您可能不希望您的浏览器发送和接收的所有内容都以明文形式通过 Internet 传输。

为了解决这个问题,发明了https协议( http+security ) 。当您尝试使用 https 协议发出请求时,您的浏览器首先会建立与所需服务器的连接并向其索取 SSL 证书。

然后检查此证书的真实性:它包含域名和向服务器颁发此证书的人的公钥列表。

如果证书是真实的,则浏览器会与该服务器建立加密连接。并且已经在此连接中,通过 http 协议传输数据。

并且由于请求资源的信息是在协议本身传输的,所以在使用https协议时,没有人能够截获浏览器访问了哪些服务器资源的信息。

今天,这个协议已经成为事实上的标准,几乎取代了旧的 http。

如果有人试图替换你向其发送 https 请求的服务器,那么他将无法替换域证书。浏览器会理解这一点,你会看到这样的页面:

9.3 http/2

但是这个世界上没有什么是不能改进的。在谷歌赢得了浏览器大战之后,它决定为自己接管整个互联网。当然,这是为了一项崇高的事业。他们决定改进 http 协议。

说到做到。添加到新的数据传输标准:

  • 强制加密。
  • HTTP 标头中的数据压缩。
  • 服务器甚至可以在文件被请求之前发送文件(推送技术)。
  • 一个 TCP 连接上可以有多个 http 请求。
  • 请求像管道一样处理(无需等待响应发送新请求)。
  • 该协议是二进制的(无需将不可打印的字符转换为文本)。

其中大部分对 Java 程序员是隐藏的,并在 Web 服务器和浏览器级别进行维护。

9.4 HTTP/3

http协议的第三个版本还在最后敲定中,它最大的创新就是拒绝了TCP协议。数据将立即通过 UDP 传输。

像这样。人们想出了 OSI 模型,他们想出了它,这就是你。为了速度什么不该做。另一方面,这可能是对的。今天,互联网上传输了大量的流媒体视频,上帝亲自下令在那里使用 UDP。

哦,有了这个协议的魅力,你已经在玩了。我已经完成我的 :)

您可以阅读有关 http/3 的更多信息