什么是 HTTP 103?

本文将通过一个快速演示深入研究 HTTP103状态代码

每天‬分享‬最新‬软件‬开发‬,Devops,敏捷‬,测试‬以及‬项目‬管理‬最新‬,最热门‬的‬文章‬,每天‬花‬3分钟‬学习‬何乐而不为‬,希望‬大家‬点赞‬,加‬关注‬,你的‬支持‬是我‬最大‬的‬动力‬。



最近,谷歌 Chrome 103发布了一系列新功能。其中一个值得注意的特点是引入了 HTTP状态码103。本文将通过一个快速演示深入研究 HTTP103状态代码。

HTTP 103

从 Mozilla Developer Network 的网络文档来看,HTTP 103早期提示是信息响应状态代码,主要用于链接头,允许用户代理在服务器还在准备响应时开始预载资源。

以下是 RFC 链接以获得更多详细信息。


HTTP103可以通过使用 link rel = preload 配置 HTTP 头字段来优化页面速度。

它是如何工作的?

通常,当浏览器发送一个请求时,服务器会在不到一秒钟的时间内接收并处理该请求,然后发送一个 HTTP200OK 响应,如下所示。

什么是 HTTP 103?


然而,使用 HTTP103早期提示,还有提高页面呈现速度的空间。

一旦服务器使用 HTTP 103功能进行了更新,当浏览器发送一个请求时,如果服务器知道内容需要 style.css、 script.js 等资源,那么它将使用 HTTP 103早期提示响应向浏览器提示(响应)以预加载内容,如下所示。

什么是 HTTP 103?

然后,一旦服务器处理完整的响应,它将向浏览器发送普通的 HTTP200OK。

当浏览器预先加载内容时,这个过程将有助于提高页面呈现速度。

如上所述,此功能需要对服务器进行更新。如需更新 Apache HTTP Server,请点击这里进行配置。

早期提示仅适用于 HTTP/2和 HTTP/3。

它只支持200、301和304响应返回代码。

此外,它工作在具有预连接或预加载重载类型的响应链接头上。

演示


为了演示 HTTP103早期提示,我在 AWS 上部署了一个带有 Ubuntu 映像的 EC2实例。我用 HTTP/2和 SSL 安装了 Apache HTTP Server。

这是我的 conf 文件内容。

H2Push on
H2EarlyHints on

下面是演示页面的 curl 输出:

什么是 HTTP 103?

正常 HTTP 200 OK

让我们在 conf 文件中配置 H2PushResource 并重新加载服务器。

H2Push on
H2EarlyHints on

    H2PushResource /main.css

使用 sudosystemctl 重新启动 apache2命令重新启动 apacheserver。

下面是启用 HTTP103EarlyHint 特性后的 curl 输出。

什么是 HTTP 103?

HTTP 103早期提示

如上所述,服务器的第一个响应是 HTTP/2103,将 main.css 预加载到浏览器,然后服务器将用 HTTP 200作出响应。

下面是服务器响应时间部分。

什么是 HTTP 103?

服务器响应时间

最后的想法

正如您了解到的,HTTP103早期提示通过提示浏览器预加载资源来帮助优化页面呈现时间。它还解决了这里概述的 HTTP/2服务器推送的主要问题。Cloudflare 还致力于利用机器学习使早期提示更加智能。我们祈祷吧。

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章