CDN 缓存
jsDelivr 提供的全球 CDN 加速,CDN的分流作用不仅减少了用户的访问延时,也减少的源站的负载。但其缺点也很明显:当网站更新时,如果CDN节点上数据没有及时更新,即便用户再浏览器使用Ctrl +F5的方式使浏览器端的缓存失效,也会因为CDN边缘节点没有同步最新数据而导致用户端未能及时更新
CDN边缘节点对开发者是透明的,相比于浏览器Ctrl+F5的强制刷新来使浏览器本地缓存失效,开发者可以通过CDN服务商提供的“刷新缓存”接口来达到清理CDN边缘节点缓存的目的。这样开发者在更新数据后,可以使用“刷新缓存”功能来强制CDN节点上的数据缓存过期,保证客户端在访问时,拉取到最新的数据。
jsDelivr 缓存刷新方式
对于 jsDelivr,缓存刷新的方式也很简单,只需将想刷新的链接的开头的
https://cdn.jsdelivr.net/… 替换成
https://purge.jsdelivr.net/…
用浏览器打开这个链接,即可实时刷新。
刷新成功后,浏览器会返回缓存刷新成功的信息,如下:
{
"id": "QvIVwzidVaTW93LI",
"status": "finished",
"timestamp": "2021-12-15T13:01:03.892Z",
"paths": {
"/gh/limitlm/limitlm.github.io/medias/banner/0.jpg": {
"throttled": false,
"providers": {
"fastly": true,
"bunny": true,
"cloudflare": true,
"quantil": false
}
}
}
}
注意
不要连续多次刷新,否则会被当成攻击,会被限制1小时左右的时间不能刷新!!!