XML 解析错误:格式不正确,尝试加载 GeoJSON 时出错



>UPDATE:我使用 QGIS 打开了我的 GeoJSON 文件来自的形状文件。我将图层保存为此 GeoJSON 文件,确保在保存时选择投影WGS84/EPSG:4326。但是当我尝试将GeoJSON放置在Google地图图层上时,我仍然会遇到下面描述的相同错误。原始形状文件在这里。

我正在尝试使用Google Maps API将此GeoJSON添加到地图中。

我的代码。

<html>
<body>
<div id="map"></div>
<script type="text/javascript">
function initMap(){
var map = new google.maps.Map(
document.getElementById("map"),
{
zoom: 9,
center: {lat: 26.6949358, lng: -80.3487426}
}
);
map.data.loadGeoJson("path/to/city-boundaries.geojson")
}
</script>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=MY_GOOGLE_MAPS_API_KEY&callback=initMap">
</script>
</body>
</html>

但是当我在 Firefox 中打开 HTML 文件时,我在开发人员的控制台中看到以下错误。

XML Parsing Error: not well-formed
Location: file:///path/to/city-boundaries.geojson

如何修复此错误?

loadGeoJson

幕后使用XHR,它不适用于本地文件。 这些文件需要由网络服务器提供。

从文档中:

loadGeoJson(url[, options, callback](Parameters: url: string
options: Data.GeoJsonOptions 可选回调: function(Array(
可选

返回值:
None
从 URL 加载 GeoJSON,并将功能添加到集合中。

注意:GeoJSON 是使用 XHR 获取的,可能无法跨域工作。如果您遇到问题,我们建议您使用您选择的 AJAX 库获取 GeoJSON,然后调用 addGeoJson((。

最新更新