1

我有一个来自世界各地的 JSON 格式的用户列表。列表中的每个项目都有一个位置信息。

  1. 如何将这些位置转换为正确的经度和纬度?
  2. 如何过滤这些位置以仅获取当前位置 50 英里范围内的位置(假设我知道如何获取当前经度和纬度)。

有我可以使用的服务吗?

我真的需要将这些位置转换为经度和纬度吗?基本上我想做的就是找到距离当前位置 50 英里的位置并忽略其他位置。

4

2 回答 2

3

您可以为此使用免费的geonames.org 网络服务。有一种可用的搜索方法,您可以在其中提供位置名称并获取任何位置的纬度和经度。请注意,可能有多个具有相同名称的位置可用。请参阅此处的示例:http ://api.geonames.org/searchJSON?q=london&maxRows=10&username=demo

对于您的第二个问题,有多种方法。这个问题概述了基本算法,但可能最简单的方法是使用 Google Maps API(请参阅此问题的第二个答案)。

于 2013-01-24T07:32:07.410 回答
1

我过去已经这样做了,因为这不是仅使用 JavaScript 和 JSON 就可以做到的。最好的方法是创建一个使用空间Point命令的 MySQL 数据库。如果您需要 JavaScript 和 JSON,那么您必须创建一个 Web 服务(例如使用 PHP)来管理 JavaScript 和 MySQL 数据库之间的查询。起初看起来令人生畏,但一旦你掌握了它,它就会很酷。我建议阅读此网站以了解基础知识。

于 2013-01-24T01:36:48.253 回答