使用Google Maps API从本地数据库中搜索最近的地址

时间:2014-12-05 12:17:15

标签: javascript google-maps google-maps-api-3

我怀疑Maps API是否有以下功能:我在本地数据库中有一个位置列表。每个地址都有地址(街道,城市,州等等),也许还有纬度/长度(如果需要,我可以检索这些数据)。 我正在寻找一个案例的解决方案,在绘制了Google地图的网页中,用户输入一个任意地址并获取距离我所拥有的本地数据库最近的地址。

我知道我可以得到这个地址' lat / long和一些简单的数学(毕达哥拉斯定理)我可以计算每个距离,但是当需要通过驾驶知道距离时,这是不一样的。

编辑:我找到了这个解决方案https://developers.google.com/maps/articles/phpsqlsearch_v3,看起来很不错。是最好的方法吗?

2 个答案:

答案 0 :(得分:2)

您可以使用Distance Matrix API:

Distance Matrix API Documentation

通过简单的通话很容易找到距离:

https://maps.googleapis.com/maps/api/distancematrix/output?parameters

响应采用JSON或XML格式,具体取决于您的选择。但是单个查询的元素数量存在限制。您可以先使用简单的数学运算选择具有恒定半径的用户周围的位置,然后在位置数足够小以便在查询中发送时使用距离矩阵。

答案 1 :(得分:1)

上述方法以半径作为参数来搜索最近的位置。
除此之外,您可以简单地获取最近的目的地并将原点和目的地传递给google方向api以获取json或XML数据。
你然后可以从中提取驾驶距离 有关详细信息,请参阅该链接:https://developers.google.com/maps/documentation/directions/#JSON