cache.delete(request) 用于删除单条缓存条目,需先通过 cache.keys() 获取键列表并筛选目标请求,再执行删除;caches.delete(cacheName) 则用于删除整个命名缓存实例。

删除指定缓存条目是维持缓存健康、防止空间浪费和避免陈旧数据干扰的关键操作。不同场景下的 Cache API 实现方式略有差异,但核心逻辑一致:定位键(key)→ 执行删除 → 验证结果。
Web Worker 中用 caches.delete() 清理整缓存或匹配缓存
Cache API 本身不提供“按 key 删除单条”的原生方法(cache.delete() 是删整个缓存实例),所以要精准清理某一条,需先打开目标缓存,再用 cache.keys() 获取所有请求键,筛选后调用 cache.delete(request):
- 确保在
fetch或自定义清理函数中操作,避免在install阶段误删预加载资源 - 使用
ignoreMethod: true和ignoreSearch: true参数让匹配更宽松,比如统一处理带参数的同一资源路径 - 示例:清除某个图片 URL 的缓存条目
const keys = await cache.keys();
const target = keys.find(req => req.url.includes('/avatar.png'));
if (target) await cache.delete(target);
MoviePilot 中按类型与模式精准删除种子缓存
MoviePilot 的 torrent.cache.delete API 支持按 hash、媒体类型(影视/音乐)、订阅模式(RSS/爬虫)三重维度删除,避免误清无关缓存:
实现 Markdown↔ HTML 互转,支持导出 PDF,用于用户请求的文档格式转换。
- 调用
DELETE /api/v1/torrent/cache/{hash}可删除指定 hash 的单条缓存,系统自动识别所属 media_type 和 subscribe_mode - 若需批量清理,推荐先用
GET /api/v1/torrent/cache?media_type=movie&subscribe_mode=rss查询后再逐条删,防止音乐缓存被误删 - 全量清理(
clear)慎用,它会分别清空rss和spider下的影视、音乐四类缓存文件
Hugging Face Hub 缓存按仓库/修订安全清理
huggingface_hub 提供了程序化扫描+预览式删除能力,适合清理大模型相关缓存:
- 用
scan_cache_dir()获取完整缓存结构,返回包含每个CachedRepoInfo和CachedFileInfo的列表 - 遍历结果,按
repo_id、revision或size_on_disk过滤,计算预估释放空间 - 调用
delete_cache()并传入DeleteCacheStrategy(如DELETE_ONE_REVISION),底层只删 symlink 和无引用的 blob,保障其他版本不受影响
Azure API 管理中用策略表达式动态删缓存值
在网关层做细粒度缓存控制时,cache-remove-value 策略支持运行时构造 key:
- key 值可用策略表达式拼接上下文变量,例如
@("userprofile-" + context.Variables["userid"]) - 设置
fail-on-cache-removal-error="false"可避免缓存不可用时中断主流程 - 适用于用户登出、资料更新等触发场景,确保下游服务读到最新数据
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!










