gpt4 book ai didi

javascript - 检索 Fusion Tables 数据时出现问题 - Google Maps API

转载 作者:行者123 更新时间:2023-11-30 18:12:46 26 4
gpt4 key购买 nike

我正在开发一个 JSP 应用程序,它可以检索大量多边形以在 map 上显示。

在告诉我的问题之前,我会尝试解释应用程序的工作原理。

我的客户需要在 Google map 上查看他的内部领土划分(一个领土是一组城市,它是一个多对多关联)。通过应用程序菜单加载文件,可以随时更改领地-城市关系。今天,我们在系统中拥有 35 个地区和大约 10000 个协会地区城市。

我在 Fusion Tables 中有城市形状的多边形,但是当我尝试检索形状时,出现以下错误:

为一个地区加载多边形的代码:

layer = new google.maps.FusionTablesLayer({
query:{
select: 'geometry',
from: {MYKEY},
where: "NAME_CITY IN ("+listOfCities+")"
}
});

错误:

Failed to load resource: the server responded with a status of 414 (Request-URI Too Large)

我一直在寻找加载这些地区的方法,我已经尝试从 Java 读取 KML 文件,并发送每个城市的坐标集,但完成后 HTML 页面大约有 300MB,它只是卡住了浏览器并且没有工作。因此,Fusion Tables 似乎是最好的方法。

我发现一些帖子告诉人们使用 POST 方法来请求数据,因为 listOfCities 变量的大小(一些地区有大约 500 个关联的城市),但他们从未说过如何使用谷歌地图 API。

我该怎么做?有人有另一种方法来解决这个问题吗?

谢谢

最佳答案

您必须以某种方式简化查询。 POST 不是一个选项,无法更改用于查询的方法。

但这可能是您可以开始的地方:领土-城市关系可以通过应用程序菜单加载文件随时更改。

您可以按照 geocodezip 的建议,在表中添加另一列来存储“关系”,而不是在您的服务器上过滤城市和查询城市。

这可能会在上传"file"时自动完成(这里你可以使用 POST)

新的 where 子句现在将变得简单而简短,例如:territory=35

关于javascript - 检索 Fusion Tables 数据时出现问题 - Google Maps API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14162590/

26 4 0