今日欣闻 BootCDN 又炸了,群友有个博客没法打开,于是瞅了一眼,发现 BootCDN 只是做了一个 301 重定向,重定向到了 cdnjs.com 的首页( http),所以根本没能弥补任何的问题。
言归正传,其实实现方法很简单,以下代码都在 head 引入
<!-- axios -->
<script src="https://cdn.bootcss.com/axios/0.19.0-beta.1/axios.min.js"></script>
<!-- Vue -->
<script src="https://cdn.bootcss.com/vue/2.5.17/vue.min.js"></script>
<!-- VueRouter -->
<script src="https://cdn.bootcss.com/vue-router/3.0.2/vue-router.min.js"></script>
<script>
/* Catch CDN Failed */
/* Vue */
window.Vue || document.write('<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.min.js"><\/script>')
/* axios */
window.axios || document.write('<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/axios.min.js"><\/script>')
/* VueRouter */
window.VueRouter || document.write('<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue-router.min.js"><\/script>')
</script>
CSS 的话只能用 onerror 事件然后自己插 link 标签来解决
当然了,各位先忽略版本不一致的问题。
实际上这个方法是有效的,毕竟我自己的几个项目就用的这个方法,今天能够正常打开。
某种意义上最好的办法当然是自建 CDN 或者找一个比较靠谱的 CDN。
1
cydian 2019-03-24 01:28:01 +08:00 via Android
我没搞懂。
你既然有备用的,为什么直接用备用的? |
2
mscststs OP |
3
kennylam777 2019-04-10 21:23:02 +08:00
這點事就自建 CDN 也太誇張了吧, 自己 host 就好, 加 Cache-Control 控制 client side 的緩存時間, 甚或是在 server side 弄一份 cache, 或者在自己網站的 CDN 留一份也可以, 起碼是共同進退
不過在當前的網絡環境, 有備無患 |