Google 地图 - 无法访问 KML 图层的 KML 文件

Google Maps - Unable to Access KML file for KML Layer

我正在使用 KML 图层在网站中嵌入 Google 地图,我正在努力解决我认为是非常基本的问题。

我的计算机上有一个 KML 文件,我想将其作为 KML 图层添加到我的地图中,但我不知道如何 "access" 该特定文件。我已将 url 设置为 url: '/../data/Bus27route.kml.xml',,目前我的 Google 地图上没有显示任何内容。现在,' ' 标记之间的内容只是 "directions" 到目录 "data".

中的文件 "Bus27route.kml.xml"

要访问计算机上的文件,“ ”标记内应该包含什么?还是我在代码的其他地方访问此文件时出错?

感谢所有认为可以帮助我的人!非常感谢任何意见、建议、问题等。

    function initMap(lat, lng) {
  var myLatLng = {lat: lat, lng: lng};

  // Create a map object and specify the DOM element for display.
  var map = new google.maps.Map(document.getElementById('bus_1_map'), {
    center: myLatLng,
    scrollwheel: false,
    zoom: 12
  });

var bus27Route = new google.maps.KmlLayer({
    url: '/../data/Bus27route.kml.xml',
    map: map
  });
}

添加 KmlLayer 时,Google 地图 API 通知 Google 服务器 "where your kml file is on the internet."

然后 Google 机器人访问您的 public 服务器 以获取 KML 文件。

之后,地图瓦片在 Google 服务器中生成,然后最终出现在您的地图上。

这就是为什么您 必须 将您的 KML 文件放在 public 服务器中。

对 KML 文件的访问不能在基于 google 的每项服务本地完成,它必须通过 Internet 上的可公开访问的服务器进行。它会尝试将您的文件放在可从互联网访问的服务器上(也有免费服务)

此表单 google 地图开发者

Your file is hosted publicly on the internet. This is a requirement for all applications loading KML into a KMLLayer. Google's servers need to be able to find and retrieve the content in order to display it on the map - this also means that the file can't be on a password-protected page.

https://developers.google.com/maps/tutorials/kml/#your_kml_file