应用程序缓存存储项目有空响应?

Application Cache Storage items have empty response?

我正在使用 service worker 设置我的 preactjs 网站。

使用 Sw-precache-plugin

我只是在查看它存储在缓存存储中的缓存项,我期望的条目都在那里,但它们的响应是空的。

我用服务人员检查了其他一些网站,发现他们的条目有 "OK" 的响应。

只是想知道使缓存响应说 "OK" 而不是空白的触发器是什么。

我发现的另一个示例,其中一些 return OK 和其他空白

Chrome 的缓存存储查看器中的 "Response" 列旨在反映关联的 Response 对象的 statusText 字段的值。成功响应的传统 status line 是“200 OK”,因此 'OK' 是其中的 statusText 部分。您可以通过将 Response 与不同的 statusText 一起存储来查看实际效果,例如:

有时没有列出 'OK',这是因为 Responseopaque,而 statusText 不可访问。第二张截图中的那些字体资源就是这种情况。

话虽这么说,但我曾见过不透明的响应(例如您第一个屏幕截图中的那些 sw-precache 管理的条目)没有正确反映 statusText 的情况。在这些情况下,您的 Web 服务器可能只是响应“200”状态行而不是“200 OK”,这将转换为 200statusstatusText''。这对于 Web 服务器用于状态行来说是完全有效的,只要条目被成功使用,我认为您不需要担心它。