【问题标题】:Cherry-pick: from two URLs with same file on different CDNs, load whichever is in cacheCherry-pick:从不同 CDN 上具有相同文件的两个 URL,加载缓存中的任何一个
【发布时间】:2019-03-25 15:59:31
【问题描述】:

我有一个想要加载 bootstrap.min.js 的网络应用

在这两个 CDN 上(以及其他):

https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/js/bootstrap.min.js https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js

使用这些 CDN 的其他应用程序命中缓存的几率相对较高。

我如何告诉浏览器检查它们是否被缓存并从浏览器缓存中加载?

服务人员可以这样做吗?

【问题讨论】:

    标签: service-worker cdn progressive-web-apps


    【解决方案1】:

    我认为存在一些隐私/安全限制,这使得使用 JavaScript 难以确定浏览器缓存中是否存在第三方 URL。

    将服务工作者添加到组合中不会绕过这些限制。

    可以使用 Fetch API 创建带有 mode of 'only-if-cached'Request,其行为或多或少与您描述的方式相同,但只有在请求的 mode'same-origin' 时才有效。换句话说,仅当 Request 用于第一方 URL,而不是您的示例中的第三方 CDN URL。

    【讨论】:

      猜你喜欢
      • 2020-01-20
      • 1970-01-01
      • 1970-01-01
      • 2014-12-08
      • 2018-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-23
      相关资源
      最近更新 更多