dbu*_*ser 7 ssl https google-maps google-maps-api-3 markerclusterer
我在http上使用谷歌地图,它工作得非常好.但是当我在同一时间安装ssl证书时,它就停止了工作.它给了我错误
混合内容:" https:// url "页面是通过HTTPS加载的,但请求了一个不安全的脚本" http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/src/ markerclusterer.js?_ = 1***************'.此请求已被阻止; 内容必须通过HTTPS提供.
Chr*_*ook 12
更新:2016年5月,Google退出了此库的google-maps-utility-library-v3.googlecode.com来源.但是,由于Google不久前将源代码转移到了GitHub,请考虑本文末尾介绍的GitHub详细信息,特别是关于直接在项目中包含脚本和资源的最终说明
除了更改您的脚本包含URL:
http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/src/markerclusterer.js
Run Code Online (Sandbox Code Playgroud)
至:
https://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/src/markerclusterer.js
Run Code Online (Sandbox Code Playgroud)
在沿着以下行实例化MarkerClusterer时,您还需要指定imagePath选项:
var mc = new MarkerClusterer(map, markers, {
imagePath: 'https://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/m'
});
Run Code Online (Sandbox Code Playgroud)
这将避免以下警告,该警告与您突出显示的脚本错误具有相同的基础:
混合内容:" https:// url "页面是通过HTTPS加载的,但是请求了一张不安全的图片" http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/ m1.png '.此内容也应通过HTTPS提供.
发生这种情况的原因是,默认情况下,MarkerClusterer库使用以下非https设置作为其群集映像的根(m1.png,m2.png等):
MarkerClusterer.prototype.MARKER_CLUSTER_IMAGE_PATH_ =
'http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/' +
'images/m'
Run Code Online (Sandbox Code Playgroud)
虽然我们前一段时间遇到过这个问题,但它似乎已经解决了对库的GitHub存储库中的以下pull请求的响应:
可以使用以下脚本url 从RawGit访问此GitHub版本:
https://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/src/markerclusterer.js
Run Code Online (Sandbox Code Playgroud)
并且以下imagePath可用于访问GitHub图像:
var mc = new MarkerClusterer(map, markers, {
imagePath: 'https://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/images/m'
});
Run Code Online (Sandbox Code Playgroud)
虽然以上网址(带有cdn前缀)没有流量限制或限制,并且文件是通过超快速全球CDN提供的,但请记住,RawGit是免费托管服务,不提供正常运行时间或支持保证.
以下SO答案将对此进行更详细的介绍:
这篇文章还包括,如果您要链接到GitHub上的文件,那么在生产中您应该考虑定位特定的发布标记,以确保您获得所需的脚本发行版本.
但是,由于js-marker-clusterer存储库的保管人尚未创建任何版本,因此目前无法实现.
因此,您应该认真考虑直接在项目中下载并包含库及其资源以用于生产目的.