快捷搜索:  汽车  科技

chrome的最新版本是哪一个(下一个Chrome版本会破坏互联网吗)

chrome的最新版本是哪一个(下一个Chrome版本会破坏互联网吗)为什么三位数是问题所在?Firefox和Microsoft Edge也接近100版本,但由于Googole Chrome是用户最多的,在本文中将重点介绍它。它与开发人员将要实现的功能无关,也与新的互联网协议无关,但是......事实上,它是版本号是100!问题来了 - 为什么这个数字如此特别,它如何影响网站?重点是100将是第一个三位数版本。


chrome的最新版本是哪一个(下一个Chrome版本会破坏互联网吗)(1)

谷歌浏览器将很快发布一个新版本,在阿尔法测试中许多网站出现了问题,如HBO Go,T-Mobile和Yahoo! Google Chrome团队发现并修复了问题,但是您知道问题所在吗?

在本文中,将解释问题所在,如何找到它以及如何轻松修复它。

下一个版本有什么特别之处?

它与开发人员将要实现的功能无关,也与新的互联网协议无关,但是......事实上,它是版本号是100!

问题来了 - 为什么这个数字如此特别,它如何影响网站?

重点是100将是第一个三位数版本。

Firefox和Microsoft Edge也接近100版本,但由于Googole Chrome是用户最多的,在本文中将重点介绍它。

为什么三位数是问题所在?

要回答这个问题,我们需要首先弄清楚为什么开发人员要检查浏览器版本,以及如何在受影响的网站上进行检查。

为什么要检查浏览器版本?

检查它的原因有很多,但最重要的两个是:

  • 以确保网站上使用的功能受所用浏览器的支持。如果网站的浏览器太旧,我们可能不允许用户进入该网站,因为它无法正常工作。
  • 出于安全原因。

检查版本号

为了检查前端的浏览器版本号,我们可以使用.在我的浏览器中结果是:navigator.userAgent

要检查后端的浏览器版本,我们需要访问由浏览器发送的请求标头,以"介绍自己"到后端服务器:User-Agent

chrome的最新版本是哪一个(下一个Chrome版本会破坏互联网吗)(2)

您不应该过多地依赖后端中的User-Agent,因为可能存在误导性信息。例如,您可以将Python脚本的请求发送到某个服务器,并介绍自己为Google Robot User-Agent。没有人会验证这一点。

在前端和后端用户代理中看起来是一样的。请看一下 。这正是我使用的Chrome版本。Chrome/98.0.4758.102

让我们假设互联网上的某个网站将使用该脚本来检查用户的浏览器版本并对其执行操作:

要在此脚本中获取Chrome版本,我们正在搜索字符串中版本号的索引( - 这个人),并获得两个前几位。然后,我们将它们与我们支持的最新版本进行比较。98.0.4758.102

你能看出问题吗?

对于高于 100 的版本,我们假设用户的版本为 10,因为我们只关心前两位数字!

10版本的chrome于2011年发布,因此它是相当传统的。

影响

正如我在开始时指出的那样,chrome开发人员在HBO Go和Yahoo!等网站上测试了新的Chrome,他们发现了这个BUG。另一家受影响的公司是Duda网站建设者,它拥有超过18000个网站。由于不适当的版本检查,它们都会中断。

很难估计有多少网站错误地检查了前端的浏览器版本,几乎不可能看到有多少网站在后端上这样做。如果你只有一个小网站,谷歌开发人员不会通知你的网站无法正常工作 - 这就是为什么我强烈建议检查你的代码库。

如何确保您的网站已准备好进行更改?

最重要的部分是意识到这个问题,但既然你正在阅读,你已经意识到了。

为了确保您的网站可以在新的chrome版本中运行,最好对其进行测试。为此,您需要打开正确的标志。

在地址栏中访问并启用该标志。chrome://flags#force-major-version-to-100

chrome的最新版本是哪一个(下一个Chrome版本会破坏互联网吗)(3)

现在,您应该准备好进行测试了。

您可能还希望搜索代码,找到访问 User-Agent 并调查每个匹配项的位置(您还应该考虑搜索依赖项)。

修复

如果事实证明您的网站受到影响,修复非常简单 - 只需检索整个主要版本而不是前两位数字即可。

在示例脚本中:

chrome的最新版本是哪一个(下一个Chrome版本会破坏互联网吗)(4)

结语

这个问题让我想起了Y2K问题 —— 当人们担心 2000 年会破坏 IT 系统时。花了大钱来避免它,没有发生大问题。希望这一次也不会出现任何惊喜。

猜您喜欢: