起因
-
以前的cf是可以直接通过代码实现在worker里全局缓存的,然后好像是cf之前更新了一下ui之后,我现在想再用全局缓存的时候,就无法实现。然后通过不断的问claude怎么解决这个全局缓存的问题,然后终于在一次回答中,claude提到了cf的缓存API,然后我就去谷歌找了详细的资料和相关文档,然后把这些文档在cursor里丢给claude之后,claude才终于实现了这个功能。
-
至于为什么我需要这个全局缓存API呢,是因为每次请求worker都要在kv里取key的话,那这样就会一直消耗kv的次数,但如果有了这个全局缓存API,那么在失效之前是不会再去请求kv的,这是很重要的一点。
主要特点
- 在 Workers 环境中全局可用
- 提供持久化的缓存存储,减少KV的读写
- 缓存内容在同一数据中心内有效
- 可跨worker使用同一个缓存
缓存API的使用方法
- 1.将以下文档挑一个或者全都在cursor里发给ai
- 2.相关限制,我在谷歌上找到的,但不确定对不对
https://www.kancloud.cn/orchie/cloudflare_worker/1627276
重要注意事项
缓存键(Cache Key)
-
必须使用有效的 URL 格式
-
可以使用虚拟域名(如
https://worker-cache/api/key
),请不要用这个示例的域名,因为你跟别人碰巧用这个域名的话,那你们会共用缓存的,这个就相当于一个独一无二的key,只要是URL格式即可,也就是只要有“https://”就可以了。 -
URL 不需要实际存在,仅作为标识符
-
建议使用项目相关的域名,避免冲突
总结以及AI写的示例
- 1.以下是我让ai总结我让AI写的代码的示例,丢给ai应该也能写出来相关代码
https://xingli.serv00.net/e42334d9-339a-4d8f-9a29-7e14f19a6277
- 2.上面用来分享的网页是这位佬友写的,我改了下