Cherry-pick:从两个在不同CDN上具有相同文件的URL,加载缓存中的任何一个

问题描述 投票:1回答:1

我有一个想要加载bootstrap.min.js的Web应用程序

这是两个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个回答
2
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.