检索不同级别的placeIds

时间:2018-05-25 10:58:37

标签: google-maps google-places-api google-places

有没有办法从特定的placeId中检索不同级别的placeId?就像你加载一个地方的地址组件一样,你得到'country''city''region'等等......但是你只能得到不同级别的位置的名字。是否有可能获得国家,城市的placeId ....?

当我在数据库中存储数据时,我还需要将country placeId,city placeId与原始placeId一起存储。当许多地方具有相同的名称时,不希望将地点的名称存储在数据库中。

1 个答案:

答案 0 :(得分:0)

您注意到地址组件数组中没有地点ID。您无法仅执行此信息执行地点详细信息请求。开发人员已在Google问题跟踪器中创建了一项功能请求:

Add place_id in each address_components

您可以加星标以添加投票。与此同时,获取国家/地区的地点ID的变通方法包括执行reverse geocoding对原始地点ID坐标的请求,其中包含结果类型位置和国家/地区。

例如,我有一个地方ID ChIJEygrJmSYpBIRUXOjvF0QSLw。这个地方的详细要求

https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJEygrJmSYpBIRUXOjvF0QSLw&key=MY_API_KEY

给出坐标41.3886875,2.130554。现在我可以执行额外的反向地理编码请求以获取地点和国家/地区的地点ID:

https://maps.googleapis.com/maps/api/geocode/json?latlng=41.3886875%2C2.130554&result_type=country%7Clocality&key=MY_API_KEY

最后一个给了我

  • 地方ID ChIJ5TCOcRaYpBIRCmZHTz37sEQ(巴塞罗那)
  • 地方ID ChIJi7xhMnjjQgwR7KNoB5Qs7KY(西班牙)

我希望这有帮助!