html文件通过script标签引入外部js文件,但没正确加载的原因

移动端H5应用,html文件通过script标签引入外部js文件,但没正确加载,在移动设备上难以排查。通过PC浏览器打开,发现js被阻止了:blocked:mixed-content
原因在于

解决方法

  • 升级资源链接协议:如果可能的话,将 JavaScript 文件的加载协议也升级为https。例如,如果资源有对应的https版本,可以将src属性修改为src = "https://g.alicdn.com/dingding/open-develop/1.9.0/dingtalk.js"。这样可以确保整个页面的资源加载都是安全的,符合浏览器的安全策略。
  • 调整服务器配置(较复杂):如果无法直接升级资源链接协议,在某些情况下,可以通过配置服务器来允许混合内容的加载。不过这种做法会降低网页的安全性,并且可能会给用户带来安全风险,一般不推荐。具体的服务器配置方法因服务器类型(如 Apache、Nginx 等)而异。例如,在 Nginx 服务器中,可以通过配置add_header Content - Security - Policy "upgrade - insecure - requests";来尝试自动将http请求升级为https请求,但这也需要服务器对https有正确的支持。
  • 将js下载到项目中引入
相关推荐
有代理ip32 分钟前
详解 HTTP 代理 8080 与 3128 的端口特性及用途
网络·网络协议·http
harrain36 分钟前
什么!vue3.4开始,v-model不能用在prop上
前端·javascript·vue.js
我不是程序员yy38 分钟前
HTTP与HTTPS的区别:不只是多了一个S那么简单
网络协议·http·https
阿蒙Amon6 小时前
TypeScript学习-第7章:泛型(Generic)
javascript·学习·typescript
睡美人的小仙女1276 小时前
Threejs加载环境贴图报错Bad File Format: bad initial token
开发语言·javascript·redis
fanruitian6 小时前
uniapp android开发 测试板本与发行版本
前端·javascript·uni-app
rayufo6 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk6 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
徐同保6 小时前
解决 Vue 3 项目 TypeScript 编译错误:@types/lodash 类型定义不兼容
redis·网络协议·https
摘星编程7 小时前
React Native + OpenHarmony:Timeline垂直时间轴
javascript·react native·react.js