CDN加载失败自动切换为加载本地静态资源
- 首发:2023-04-30 23:50:01
- vscode
- 2354
在Web开发中,我们通常使用CDN(内容分发网络)来加速网站的静态资源(如CSS和JavaScript文件)加载。然而,CDN有时可能会失效,导致网站加载速度变慢或者无法正常运行。本文将介绍一种优化方案,当HTML中引入的style或JavaScript静态资源CDN失效时,自动切换为加载本地js/css。我们还将介绍一个名为 "CDN to Local Fallback for HTML Files" 的VSCode插件的开发和测试过程,以帮助您更轻松地实现这个方案。
前端静态资源CDN加载失败的优化方案
要实现这个优化方案,我们需要在HTML文件中添加一个特殊的<script>
标签,当CDN资源加载失败时,该脚本将自动切换到使用本地资源。具体实现方法如下:
- 遍历HTML文件中所有引用外部CSS和JavaScript资源的
<link>
和<script>
标签。 - 下载这些标签所指向的CDN资源,并将其保存到本地目录。
- 在每个
<link>
和<script>
标签中添加一个onerror
属性,该属性指向一个名为loadFallbackResource
的函数。 - 在HTML文件中添加一个
<script>
标签,该标签包含loadFallbackResource
函数的实现,以及一个在页面加载完成后遍历所有带有onerror
属性的元素并调用loadFallbackResource
的事件监听器。
感谢回复! Clang 在生成时沿用了 GCC 的版本号标识,我是不是可以理解为Clang 18.1.4生成时使用的就是GCC4.8,所以我后续使用gcc 9.4
gcov
就会有不兼容的问题抱歉,这块我也不太清楚,尝试寻求AI的帮助吧。
我在这个过程中遇到了各种问题- -,现在在UDC core: g_serial: couldn't find an available UDC卡住了,请问大佬有什么解决方案吗,还是说我前置的设置就错了呢,> 这个需求很特殊。是可以的,但是比较困难,需要修改驱动配置。
好思路呀!!
关于hex编辑器,网上没找到特别好用的(小白没办法),最后在vscode上扩展一搜hex,第一个安装一下就可以用vscode进行hex编译了