前端报错之mixed content the page at was loaded over https
mixed content the page at was loaded over https
报错原因:
- HTTPS页面里动态的引入HTTP资源,比如引入一个js文件;
- 在HTTPS页面里通过AJAX的方式请求HTTP资源。
解决方案:
如果目标有https资源,就是用https方式能打开连接,可以直接用相对路径例如//baidu.com
CSP:如果不想改,而且确定连接有https资源,可以用
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
,可以在相应的页面的里加上这句代码,意思是自动将http的不安全请求升级为https。- 通过 upgrade-insecure-requests 指令,页面中所有 HTTP 资源,都会首先被替换为 HTTPS 地址再发起请求;页面所有站内链接,点击后会被替换为 HTTPS 地址再跳转。
- upgrade-insecure-requests 适用于网站资源已经做了https升级,但是页面链接需要改造的工作量太大,可以使用此指令快速实现目的。但是该指令只替换协议部分,因此只适用于转换后的https资源已经存在的情况。
用自己服务器做一层代理。详细梳理ajax跨域4种解决方案
点击网址输入栏右边的小金盾,允许加载未知来源的脚本。
前端报错之mixed content the page at was loaded over https
https://flepeng.github.io/021-frontend-浏览器策略-前端报错之mixed-content-the-page-at-was-loaded-over-https/