使用缓存 put API 时资源的 "time cached" 值不正确

Resource's "time cached" value is incorrect when using the cache put API

我正在使用服务工作者来缓存自定义响应。我无法克隆现有响应或使用 cache.add.

当我缓存新响应时,"time cached" 列总是显示 12/31/1969, 3:59:59 PM

您可以通过在控制台中执行以下命令来查看实际效果。

var cache = await caches.open('my-cache');

var headers = new Headers();
headers.append('Content-type', 'application/javascript; charset=utf-8');

var responseData = {
    status: 200,
    statusText: 'OK',
    headers: headers
};

cache.put('hello.js', new Response('alert("hi!");', responseData));

如果您查看缓存文件,您会发现缓存的时间不正确:

.

我尝试过指定各种响应 headers,包括 AgeCache-ControlDateExpires。我添加的任何内容都无法更正此值。

关于这是为什么以及如何纠正它的任何想法?

这是 Chrome 的 DevTools 的问题,而不是您的代码的问题。我已代表您提交 https://bugs.chromium.org/p/chromium/issues/detail?id=845629 以跟踪它。