我编写的代码可以返回给定缓存中不再使用的所有文件的响应,但是当我运行caches.delete
时,它返回false。看起来这是为了删除整个缓存,但我只想删除一些选择文件。有办法吗?
您可以使用cache.delete(request, options)
删除缓存中的项目。
此方法在缓存中找到与请求匹配的项目,将其删除,然后返回解析为true的Promise。如果找不到该项目,则解析为false。
以下是MDN定义的选项:
ignoreSearch:一个布尔值,它指定是否忽略URL中的查询字符串。例如,如果设为[true]
=?bar部分htt://foo.com/?value=bar
执行比赛时将被忽略。默认为false。
ignoreMethod:一个布尔值,当设置为true时,将阻止匹配操作验证Request HTTP方法(通常只允许GET和HEAD。它默认为false。)>
ignoreVary:一个布尔值,当设置为true时,将指示匹配操作不执行VARY标头匹配-也就是说,如果URL匹配,则无论Response对象是否具有VARY标头,您都将获得一个匹配项。默认为false。
cacheName:DOMString,表示要在其中搜索的特定缓存。请注意,Cache.match()会忽略此选项。