程序生成的KML文件可以验证,但不起作用

迈克·威尔斯

我有一个通常与Google Maps合作的同事,现在正在创建我的第一张地图。我正在使用他们过去开发的软件,并根据我的需要进行更改。他们创建了一个脚本,该脚本设置了一些地图默认设置,因此这就是为什么看起来可能略有不同的原因。

var map = new Map();
map.loadMap();
var kml = new google.maps.KmlLayer({ url: 'http://api.mankatomn.gov/api/engineeringprojectskml', suppressInfoWindows: true });
kml.setMap(map.map);

地图加载。我的KML文件未加载。我在控制台中没有任何错误。当我用不同的URL替换URL时,http://www.mankato-mn.gov/Maps/StreetConstruction/streetconstruction.ashx?id=122它将正常工作。我的新Feed确实通过了验证。我的网络服务有问题吗?

更新:几天后,我仍然遇到问题。因此,我很确定这不再是DNS问题。我创建了一个jsFiddle来查看它是我的代码还是其他代码。我从Google的示例代码开始,然后将KML文件的URL更改为我的Web服务和所生成文件的静态版本。两者都是 有效的KML文件。都不起作用。如果存在语法错误,API不会报告该错误吗?

ffflabs

您可以通过以下方式获取KML层的状态:

kml.getStatus();

在这种情况下返回:

"INVALID_DOCUMENT"

现在,如果我从浏览器请求您的URL,我会得到

<Error>
   <Message>An error has occurred.</Message>
</Error>

因此,似乎那里曾经有一个有效的KML,现在已经不存在了。根据您的问题,我可以猜测它超出了重量限制,或者您没有将其与有效的map实例相关联。

为了使getStatus返回有用的内容,您必须等待Google Maps API尝试加载您声明的KML图层。例如,您可以在status_changed事件上添加一个侦听器。

var kmloptions={ 
    url: 'https://dl.dropboxusercontent.com/u/2732434/engineeringprojectskml.kml',     
    suppressInfoWindows: true 
};
var newKml = new google.maps.KmlLayer(kmloptions);
newKml.setMap(map);

google.maps.event.addListenerOnce(newKml, 'status_changed', function () {
    console.log('KML status is', newKml.getStatus());
});

在这种情况下(请注意,我使用的是您在jsFiddle中使用的备用URL),我仍然得到INVALID DOCUMENT。

更新:似乎问题在于文件的编码(UTF-16 BE是二进制的)。我将其转换为utf-8并重新缩进了(现在在我的公共保管箱中

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

引导程序验证不起作用

来自分类Dev

jQuery验证程序不起作用

来自分类Dev

jQuery文件大小验证不起作用

来自分类Dev

如果使用Random或SecureRandom生成组件ID,则JSF验证程序不起作用

来自分类Dev

Pyinstaller生成的EXE文件不起作用

来自分类Dev

标题不起作用生成的 excel 文件...?

来自分类Dev

尝试以Python脚本复制文件,但不起作用

来自分类Dev

jQuery插件文件加载但不起作用

来自分类Dev

尝试以Python脚本复制文件,但不起作用

来自分类Dev

尝试将 JSON 文件导入 React 但不起作用

来自分类Dev

生成 apk 文件时无法使用片段中的按钮和应用程序不起作用

来自分类Dev

jQuery表单验证提交处理程序不起作用

来自分类Dev

验证程序在Zend Framework 2中不起作用

来自分类Dev

Flutter:Textformfield验证程序数组不起作用

来自分类Dev

Angular程序要求的验证器不起作用

来自分类Dev

为什么我的JavaScript验证程序不起作用?

来自分类Dev

关于密码验证的 C 程序不起作用

来自分类Dev

iOS 应用程序的收据验证代码,不起作用

来自分类Dev

验证程序在服务器的首次启动上不起作用,在重新加载项目后可以工作

来自分类Dev

视频文件上的Laravel验证不起作用

来自分类Dev

laravel 4 docx文件验证不起作用

来自分类Dev

laravel 4 docx文件验证不起作用

来自分类Dev

视频文件上的Laravel验证不起作用

来自分类Dev

ZF2:文件集验证不起作用

来自分类Dev

多文件上传验证javascript如果语句不起作用

来自分类Dev

带有验证的 Django 文件上传不起作用

来自分类Dev

从循环(在指令中)生成监视程序不起作用

来自分类Dev

JSON验证不起作用?

来自分类Dev

验证表不起作用

Related 相关文章

热门标签

归档