2016-06-06 2 views
3

Если у меня есть два места, мой адрес и страна, как я могу спросить API Карт Google, если мой адрес «placeid» находится внутри страны?проверить, если один placeid находится в другом месте

Например, у белого дома есть место ChIJ37HL3ry3t4kRv3YLbdhpWXE, а в США есть место ChIJCzYy5IS16lQRQrfeQ5K5Oxw, может ли API Карт сказать мне, есть ли белый дом в США, используя место? Если да, то как?

Если я перехожу к https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJCzYy5IS16lQRQrfeQ5K5Oxw&key=REDACTED, то я могу видеть полную информацию о месте, но это не говорит мне, что мне нужно знать.

ответ

2

API Карт Google не предоставляет никакой конечной точки, способной проверять взаимосвязь между идентификаторами места.

Уникальный вариант, который у вас есть, - это проверка компонентов адреса одного идентификатора места и попытка выяснить, содержат ли они компоненты адреса другого идентификатора места. Другими словами, найдите пересечение адресных компонентов.

Пожалуйста, посмотрите на эти запросы:

https://maps.googleapis.com/maps/api/geocode/json?place_id=ChIJCzYy5IS16lQRQrfeQ5K5Oxw&key=YOUR_API_KEY

https://maps.googleapis.com/maps/api/geocode/json?place_id=ChIJ37HL3ry3t4kRv3YLbdhpWXE&key=YOUR_API_KEY

Вы можете видеть, что они содержат общий адрес компонента

{ 
    "long_name":"United States", 
    "short_name":"US", 
    "types":[ 
     "country","political" 
    ] 
} 
+0

происшедшие идентификаторы в address_components массив помогло бы, нет? Не стесняйтесь запрашивать запрос функции по адресу https://code.google.com/p/gmaps-api-issues/issues/entry?template=Geocoding%20API%20-%20Feature%20Request – miguev