1

我正在使用 google API 编写一个应用程序,该应用程序从我的本地服务器加载一个 kml 文件。但是文件没有显示,地图“移动”到一个未指定的位置。为了测试这一点,我只是尝试来自 google API 参考的 kml 示例:

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">

<title>Google Maps JavaScript API v3 Example: KmlLayer KML</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script src="http://maps.googleapis.com/maps/api/js?key=AIzaSyAWcYJaMe2mN1u2NYz4ztmffINxGcEpB64&sensor=false&language=he"></script>
<script>

function initialize() {
    var chicago = new google.maps.LatLng(41.875696,-87.624207);
    var mapOptions = {
        zoom: 11,
        center: chicago,
        mapTypeId: google.maps.MapTypeId.ROADMAP
        }

    var map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);

    //var ctaLayer = new google.maps.KmlLayer('http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml');
    var ctaLayer = new google.maps.KmlLayer('http://www.pgl.co.il/maps/testlyr/cta.kml');
    ctaLayer.setMap(map);
}

</script>
</head>
<body onload="initialize()">
<div id="map_canvas"></div>
</body>
</html>

当文件位于 Google 服务器中时它工作正常,但是当文件在我的服务器中时(windows,iis 5.1),html 运行但地图不显示 kml 文件。我已经在 iis 的标题部分定义了 mime 类型。

怎么了?感谢您的帮助!

4

1 回答 1

3

Google 的服务器无法访问该文件。

如果我将您的代码中的 URL 放入 Google 地图,它会显示:

在http://www.pgl.co.il/maps/t找不到文件....

建议:

  • 确保 URL 拼写正确。
  • 确保文件存在。

http://www.feedvalidator.org一样:

服务器返回超时[帮助]

对不起

尝试验证此 Feed 时出错。

可能的原因:

  1. 地址可能不正确。确保地址拼写正确。尝试直接在浏览器中加载提要,以确保该地址存在提要。
  2. Feed 可能暂时不可用。服务器可能已关闭或太慢。稍后再试。
  3. 验证器可能会被破坏。如果提要存在,服务器很好,并且问题是可重现的,请在 feedvalidator-users 邮件列表上告诉我们。

你确定:

  1. 您的服务器配置为提供 kml 文件
  2. 该文件在正确的位置
于 2012-08-19T21:20:47.510 回答