我有一个模块测试:
var myCache = await caches.open("test"); // 创建一个新的缓存 await myCache.add(new Request("/index.html")); // 页面成功存储 await caches.delete("test"); myCache.match("/index.html"); // 我仍然能从已删除的缓存中读取!
在删除缓存之后,我在浏览器检查器中看不到它了,但我仍然可以通过.match
方法获取响应。在这里我期望发生错误,请解释这种意外行为。
似乎MDN网站上对于CacheStorage.delete的描述存在混淆。实际上,对象没有被删除。W3C规范中指定了cacheJobPromise仅仅会删除映射中的键,而不是对象本身