npm - JSDelivr URL 中的差异有和没有“最新”
问题描述
我去 GitHub 问题 提出支持票,但想先问这个问题以避免噪音。
这就是文档所说的-
完全省略版本或使用“latest”加载最新版本(不推荐用于生产用途):
/npm/jquery@latest/dist/jquery.min.js /npm/jquery/dist/jquery.min.js
根据文档,我们可以latest
或完全省略它来加载最新版本。但我看到了不同——
添加(latest
URL 1 - U1)
示例 - https://cdn.jsdelivr.net/npm/@letscooee/web-sdk@latest/dist/sdk.min.js
它加载缓存 24 小时的最后发布版本。这意味着如果我们在 24 小时内发布 v2 和 v3,上面的 URL 仍然会显示 v1。
缓存期为 1 周。
没有latest
(URL 2 - U2)
示例 - https://cdn.jsdelivr.net/npm/@letscooee/web-sdk/dist/sdk.min.js
虽然我们完全省略了latest
,但它会立即加载最新版本,即 v3,并且缓存期也是 1 周。
我已根据他们的文档请求清除 API,但我相信这种行为与他们的文档不一致。
尝试谷歌搜索原因并阅读他们的文档 3 次。我错过了什么吗?
编辑 1
阅读马丁的回答后,我做了以下 -
(要查看图像,请在新标签中打开它们并在t
之前删除.png
)
最后一步表明我在这里错了。根据文档,这按预期工作(即仅显示 0.0.3)
解决方案
两种情况下的缓存时间相同 - CDN 级别为 12 小时,浏览器为 7 天:cache-control: public, max-age=604800, s-maxage=43200
这并不一定意味着两个 URL 将始终返回相同的内容,因为 CDN 和您的浏览器都会根据第一次检索每个 URL 的时间独立计算每个 URL 的过期时间,因此 CDN 可能会在最长 12 小时内提供不同的版本发布。
推荐阅读
- python - 使用 python 删除 .csv 文件中多余的逗号、空格和行偏移
- python - 如何在 python 中更快地运行多个进程?
- wordpress - 如何在 AffiliateWP 中添加自定义 Dokan 卖家注册推荐
- android - SQLite 的更新查询
- blockchain - Solidity Remix 交易恢复到初始状态
- flutter - 如何从 Flutter 中的状态更改 TextField 值?
- r - 处理从 str_extract_all 返回的字符(0)
- r - 在字符串的特定位置插入空格
- node.js - 本地主机拒绝在chrome中连接
- flutter - 使用 const 值存储在 dart 类中的数据