关于cdn在项目中的使用

当我们在项目中引入公共 cdn 时,想要考虑一些东西,现在我把他描写一下

公共 cdn 的选择

这里只讨论免费的 cdn

cdn 选择总结

如果项目一直运行在国内, 可以选择 BootCDN, 又拍云,jsDelivr,七牛,75cdn
如果是海外项目, 可以选择: UNPKG,jsDelivr, CDNJS, 七牛
如果想要兼容海内外,可以选择: jsDelivr, 七牛

cdn 容错处理

cdn 虽然好,但是当我们引入 cdn 时,就将我们的生命周期绑定在一起,
一旦出现了什么问题,我们的那一段代码就无法使用了
所以我们对于公共的 cdn 就要加上容错处理:

<script src="http://cdn.staticfile.org/jquery/2.1.0/jquery.min.js"> <script>window.jQuery || document.write('<script src="/jquery.min.js">')</script> 

在 cdn 的 script 后加入一句容错处理
这样的写法,如果不借用插件会显示比较麻烦, 如果 cdn 只有1,2 个的话还好, 如果有异步 cdn 引入就显得更麻烦了
document.write('<script src="/jquery.min.js">') 可以使用本地的数据, 也可以使用另一个 cdn

 <script type="text/javascript"> var assetsRetry=function(){"use strict"; // 代码的引用省略}(); </script> <script type="text/javascript"> var assetsRetryStatistics = window.assetsRetry({ domain: { 'https://cdn.jsdelivr.net/npm/video.js@7.10.22/dist/': 'https://cdn.bootcdn.net/ajax/libs/video.js/7.10.1/' } }) </script> <script src="https://cdn.jsdelivr.net/npm/video.js@7.10.22/dist/video.js"></script> 

jsdelivr 中我使用了 不存在的版本, 所以这一定不会被加载, 但我们检测到之后, 会使用 https://cdn.bootcdn.net/ajax/libs/video.js/7.10.1/ 来替换, 使得加载可以成功

原文链接:https://www.cnblogs.com/Grewer/p/14331846.html

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/6472

(0)
上一篇 2022年8月13日
下一篇 2022年8月13日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml