自动切换无法加载的静态资源,预防 CDN 挂掉后网站故障

2022-03-23 15:47:41 浏览数 (2)

使用静态的 CDN 引入 jQuery 等一些 js 包,可以会提升网页性能。一旦引入的 CDN 地址挂掉,项目则会同样挂掉,因此我们需要在引入时,添加一个判断。

示例一:

代码语言:javascript复制
<script type="text/javascript" src="//apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
(function(){
 window.jQuery || document.write('<script src="/Public/static/js/jquery-2.1.4.min.js"></script>');
})();
</script>

示例二:

代码语言:javascript复制
<script src="//cdn.staticfile.org/jquery/1.8.3/jquery.min.js"></script>
<script>
   if (!window.jQuery) {
    var script = document.createElement('script');
    script.src = "/js/jquery.min.js";
    document.body.appendChild(script);
}
</script>

这段代码第一行很简单就是你正常引入 cdn 的地址,下面一行的话就是首先判断 Windows.jQuery 是否存在。也就是说判断一下这个 CDN 是不是挂掉了,如果没有挂掉,那么就直接使用,如果挂掉了,那么就要在后面引入自己的本地资源库。

这样就可以保证在可以使用 cdn 的时候,如果 cdn 不可以使用,就加载本地的资源。

0 人点赞