Javascript 放在web服务器上时未加载有效的KML
试图做一些简单的事情,但似乎有什么东西把它抛了出去。只想从网页加载一个KML文件 所以我在Google Earth上制作了一个非常简单的KML文件,上面有一个地名,然后保存下来并上传到我们的定向越野俱乐部网站(如果有什么不同的话,就放在GoDaddy上)。然后我从网页上复制了html代码,并将其加载到我的网站上,然后更改了关键代码——工作正常 接下来我所做的就是更改lat/long位置值,然后列出我自己的kml文件,完整的URL。。它拉起一张地图,居中,但没有地标。啊 我已经读过了,想知道服务器端是否需要做些什么来读取KML?因为它是一个GoDaddy主机,如果这是问题,我无法控制它 KML只列出了一个地名,我已经通读了谷歌地图模式,这一切似乎都是合法的。反正在这儿Javascript 放在web服务器上时未加载有效的KML,javascript,google-maps,google-maps-api-3,kml,godaddy-api,Javascript,Google Maps,Google Maps Api 3,Kml,Godaddy Api,试图做一些简单的事情,但似乎有什么东西把它抛了出去。只想从网页加载一个KML文件 所以我在Google Earth上制作了一个非常简单的KML文件,上面有一个地名,然后保存下来并上传到我们的定向越野俱乐部网站(如果有什么不同的话,就放在GoDaddy上)。然后我从网页上复制了html代码,并将其加载到我的网站上,然后更改了关键代码——工作正常 接下来我所做的就是更改lat/long位置值,然后列出我自己的kml文件,完整的URL。。它拉起一张地图,居中,但没有地标。啊 我已经读过了,想知道服务器
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document>
<name>Test1</name>
<Style id="s_ylw-pushpin">
<IconStyle>
<scale>1.3</scale>
<Icon>
<href>http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png</href>
</Icon>
<hotSpot x="20" y="2" xunits="pixels" yunits="pixels"/>
</IconStyle>
</Style>
<Placemark>
<name>testmark</name>
<styleUrl>#s_ylw-pushpin</styleUrl>
<Point>
<gx:drawOrder>1</gx:drawOrder>
<coordinates>-73.20975393157571,44.46282408596932,0</coordinates>
</Point>
</Placemark>
</Document>
</kml>
测试1
1.3
http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png
测试标记
#s_ylw-图钉
1.
-73.20975393157571,44.46282408596932,0
如前所述,我只是使用了与KML Layers网页完全相同的文本,并将位置更改为我的lat/long(工作),但从未找到KML文件。
"...
var ctaLayer=new google.maps.KmlLayer({
url:“”,
地图:地图
……”
也曾在多个浏览器中尝试过。IE用一个无法清除Active X控件的消息栏阻止了它,Chrome和Firefox显示了一个空白地图
当我尝试了几个JSFIDLE选项后,添加KML链接时总是失败
完整链接有什么问题吗?!!有什么想法吗?很抱歉是这样一个nube,但……这是真的。KML文件必须公开访问(而不是使用密码/登录名)为了让Earth and Maps能够访问和加载它。您提供的URL会导致服务器上的404页面…因此,可能该文件已不存在,或者由于我未经身份验证/登录而不允许我访问该文件?请尝试将KML放在您100%确定为公共的位置(通过匿名选项卡测试访问) 正如注释中提到的JASOM1,您还需要确保所服务的文件的MIME类型设置正确。如果您将该文件设置为公共文件,但继续获取原始XML而不是KML文件下载,那么请检查MIME类型设置 如果您真的只想在Google地图上添加一个点,那么使用Maps API选项添加标记可能会更容易
哦,当我直接复制到地球上时,您提供的示例KML看起来和工作起来都很好。因此答案是双重的,并且与MIME类型和完全公开的URL都有关联
所以在这两者之间,这是行不通的。可能看到了“s”,但我从来没有发现MIME类型的问题。非常感谢各位!!您检查过内容类型(MIME类型)了吗从服务器?有时,当您将文件发布到文件服务器时,url是指向通过JavaScript自动加载内容的网页,而不是KML内容本身。您是否验证了url是内容-尝试类似cURL的方法首先获取url。MIME类型…从来没有这样做过。Quick web search为web.config文件提供了此信息,但当我将其加载到根目录时,映射仍然没有加载Placemark.system.webServer>我可以向您保证,实际的KML文件比单个Placemark要复杂一些。:)对…我认为您的KML不止一点。:-)对于MIME类型,看起来应该是正确的,但如果没有工作的KML URL,则很难确认。是否可以共享工作的KML链接,以验证MIME问题并尝试其他调试?仅供参考,有关MIME类型的文档位于本页底部: