我有一个JSON格式的世界各地的用户列表。列表中的每个项目都有一个位置信息。地理位置:通过接近筛选
- 如何将这些位置转换为正确的经度和纬度?
- 如何过滤这些位置以获取距我目前位置50英里内的位置(假设我知道如何获取当前的经度和纬度)。
有没有我可以使用的服务?
我真的需要将这些位置转换为经度和纬度吗?基本上我想要做的就是找到距离当前位置50英里的位置,并忽略其他位置。
我有一个JSON格式的世界各地的用户列表。列表中的每个项目都有一个位置信息。地理位置:通过接近筛选
有没有我可以使用的服务?
我真的需要将这些位置转换为经度和纬度吗?基本上我想要做的就是找到距离当前位置50英里的位置,并忽略其他位置。
你可以使用免费的geonames.org webservice。有一个search method可用,您可以提供位置名称并获取任何位置的经度和纬度。请注意,可能有多个位置具有相同的名称。看到这里的例子:http://api.geonames.org/searchJSON?q=london&maxRows=10&username=demo
对于你的第二个问题,有多种方法。在this question中列出了基本算法,但最简单的方法可能是使用Google Maps API(请参阅this question的第二个答案)。
我已经完成了这项工作,因为它不是一个人只能用JavaScript做的事情& JSON。最好的方法是创建一个使用空间Point
命令的MySQL数据库。如果您想要JSON,那么您将不得不创建一个Web服务(例如使用PHP)来管理MySQL数据库的JavaScript &之间的查询。起初似乎令人生畏,但一旦掌握了它,它就很酷。我建议reading this site了解基础知识。
非常感谢,我希望有node.js的一些nosql解决方案?无论如何利用这个http://docs.mongodb.org/manual/core/geospatial-indexes/ – socialMatrix
看起来像一个新的方式在MongoDB中做类似的事情,但我总是喜欢使用更稳定和支持的MySQL方法。也许MongoDB将努力成为一个标准,但它还没有。祝你好运! – JakeGould