我創建了一個Hello World程序加載本地KML文件(從谷歌的文檔借用):使用Google地圖加載本地.kml文件?
var ctaLayer = new google.maps.KmlLayer("http://localhost:8080/kml/cta.kml");
這不工作(沒有被加載)。
然而,當我把上面一行:
var ctaLayer = new google.maps.KmlLayer("http://gmaps-samples.googlecode.com/svn/trunk/ggeoxml/cta.kml");
它正常加載。兩個kml文件是相同的。我自己提供服務時需要做些什麼來加載它? (我試過絕對和相對路徑,我知道我現在用的路徑是正確的......)
而且我加入了正確的MIME類型,以我的應用程序服務器的配置文件:
<mime-mapping>
<extension>kml</extension>
<mime-type>application/vnd.google-earth.kml+xml</mime-type>
</mime-mapping>
<mime-mapping>
<extension>kmz</extension>
<mime-type>application/vnd.google-earth.kmz</mime-type>
</mime-mapping>
但它仍然不加載。
我發現這在谷歌的docs:
的谷歌地圖API支持用於顯示地理信息的KML和GeoRSS數據格式。這些數據格式使用KmlLayer對象顯示在地圖上,KmlLayer對象的構造函數接受可公開訪問的KML或GeoRSS文件的URL。
所以,我想什麼,我試圖做的是不可能沒有從公開訪問的網址服務的KML ......除非有人能夠證明否則
當您在瀏覽器中訪問本地KML URL時會發生什麼情況? – 2012-08-25 11:58:45