https中请求http资源报错Mixed Content & BMapGL is not defined

再本地请求的百度Map正常,部署发现如下错误
https中请求http资源报错Mixed Content & BMapGL is not defined_第1张图片
原因:
HTTPS页面里动态的引入HTTP资源,比如引入一个js文件,会被直接block掉的.在HTTPS页面里通过AJAX的方式请求HTTP资源,也会被直接block掉的。
解决一
百度地图官方给出解决方案(未成功)
https中请求http资源报错Mixed Content & BMapGL is not defined_第2张图片
或者
在调用百度地图API的URL中加&s=1

<script src="https://api.map.baidu.com/api?v=2.0&ak=my-baidu-ak&s=1" type="text/javascript"></script>

解决二:
页面的head中加入:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

意思是自动将http的不安全请求升级为https

你可能感兴趣的:(javascript,百度地图)