Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法将KML文件渲染到google地图_Javascript_Google Maps_Kml_Geoxml3 - Fatal编程技术网

Javascript 无法将KML文件渲染到google地图

Javascript 无法将KML文件渲染到google地图,javascript,google-maps,kml,geoxml3,Javascript,Google Maps,Kml,Geoxml3,我的谷歌地图代码 var myOptions = { center: {lat: 55.864237, lng: -4.251806}, zoom: 16, mapTypeId: google.maps.MapTypeId.SATELLITE }; var map1 = new google.maps.Map(document.getElementById("map"), myOptions); var geoXml = new geoXML3.parser({

我的谷歌地图代码

var myOptions = {
    center: {lat: 55.864237, lng: -4.251806},
    zoom: 16,
    mapTypeId: google.maps.MapTypeId.SATELLITE
};

var map1 = new google.maps.Map(document.getElementById("map"), myOptions);

var geoXml = new geoXML3.parser({
    map: map1
});
var source = 'https://developers.google.com/kml/documentation/KML_Samples.kml';

geoXml.parse(source);
我得到的错误如下:

加载失败:请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“”

XML解析错误 无法检索

有人知道我如何解决这个问题吗

使用浏览器的XmlHttpRequest对象,该对象受。您无法访问
https://developers.google.com
from
http://localhost:8080
(不同的来源)

要使用GeoXml3,请将该文件复制到服务器并通过相对URL访问它,或者通过
http://localhost:8080


另一种选择是使用Google Maps Javascript API v3,它从Google的服务器访问KML,不受同一来源政策的约束。

尝试下载KML文件并将其本地加载到您的页面中。您收到的错误是由于安全限制造成的,google阻止您加载驻留在其服务器上的资源。事实上,我一开始试过KML层,在下面的问题中遇到了麻烦。1.我已经在dropbox上上传了我的kml文件。我成功地在谷歌地图中呈现了kml文件。但颜色模式和不同颜色的多边形并没有显示在地图中。它只是显示多段线。当我把这个文件上传到在线KML查看器时,我知道了这个问题。我的kml链接-这就是为什么我用另一种方式尝试。kml不是“我的”,它来自谷歌(在OP的问题中)。示例中的多边形用颜色填充。请仔细查看样式定义。