NetworkLink kml文件适用于Google地球,但不适用于Google地图(浏览器地图只是一张没有任何地标的裸地图)

时间:2011-12-13 21:53:16

标签: javascript asp.net google-maps kml

我有一个非常简单的NetworkLink kml(下面)文件,该文件具有生成动态地标的.aspx文件的href标记(<Placemark id="1"><name><description>,{{ 1}},<Point>作为代码)。 NetworkLink kml文件适用于谷歌地球,但不适用于谷歌地图(浏览器地图只是一张没有任何地标的裸地图),我不知道为什么。

NetworkLink kml文件:

<coordinates>

.js实际上显示(或应该显示但不显示)地图上的地标:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
    <NetworkLink>
        <name>Ticket Map Add-In</name>
        <Link>
            <href>http://66.230.78.217/getKML.aspx</href>
        </Link>
    </NetworkLink>
</kml>

任何理由的解释都会受到高度赞赏

链接到不起作用的页面: http://66.230.78.217/ResultsGeneral.aspx

*的 更新 *

我开始认为它是NetworkLink文件的一个问题。我无法使用 window.onload = function () { initialize(); } var map; var infowindow; var service; var request; function initialize() { geocoder = new google.maps.Geocoder(); var startLatLng = new google.maps.LatLng(41.82177, -72.50722); map = new google.maps.Map(document.getElementById('map_canvas'), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: startLatLng, zoom: 5 }); infowindow = new google.maps.InfoWindow(); var ctaLayer = new google.maps.KmlLayer('http://66.230.78.217/netLink.kml'); ctaLayer.setMap(map); } 加载任何文件(kml或aspx)...但我可以直接在javascript中加载相同的kml文件。

1 个答案:

答案 0 :(得分:1)

可能是因为您的服务器创建KML花费的时间太长。您可以通过在服务器上保存静态版本的KML并进行NetworkLink调用来测试此理论。

此外,您应该正确设置KML的MIME类型,如http://code.google.com/apis/kml/documentation/kml_tut.html#kml_server

中所述