给定一个 JSON API 端点/api/config
,我们正在尝试使用<link rel="prefetch" href="/api/config">
在 HTML 文档的头部。 Chrome 在点击 HTML 中的链接标签时会按预期下载数据,但大约一秒钟后通过我们的脚本中的 XHR 再次请求数据。
服务器配置为允许缓存,并响应Cache-Control: "max-age=3600, must-revalidate"
在标题中。当 Chrome 再次请求数据时,服务器会正确响应 304 Not Modified 状态。
用例是这样的:配置端点将始终使用 XHR(AngularJS 解析,如果相关的话)从单页应用程序中的 Javascript 请求。然而,我们的脚本非常大,需要很长时间来解析,因此在解析完成之前不会请求 JSON 配置。预取允许我们使用一些解析时间来获取和缓存来自 API 端点的响应,否则这些响应就必须等待脚本加载。
是的,您应该能够预加载 JSON在这里阅读 https://developer.mozilla.org/en-US/docs/Web/HTML/Preloading_content.
fetch:通过 fetch 或 XHR 请求访问的资源,例如 ArrayBuffer 或 JSON 文件。
所以尝试这个语法:
<link rel="preload" href="/api/config" as="fetch">
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)