Введение
API Places поддерживает функцию поиска поблизости (устаревшая) . Если вы знакомы с функцией поиска поблизости (устаревшая), то функция поиска поблизости (новая) вносит следующие изменения:
- Функция Nearby Search (новая) использует HTTP-запросы POST. Параметры передаются в теле запроса или в заголовках HTTP-запроса POST. В отличие от неё, в Nearby Search (устаревшая) параметры URL передаются с помощью HTTP-запроса GET.
- Требуется маскирование полей. Необходимо указать, какие поля должны быть возвращены в ответе. Списка возвращаемых полей по умолчанию нет. Если этот список пропущен, методы вернут ошибку. Подробнее см. в разделе FieldMask .
- Nearby Search (новый) поддерживает как ключи API , так и токены OAuth в качестве механизма аутентификации.
- В качестве формата ответа для функции Nearby Search (новый) поддерживается только JSON.
- Все запросы, включающие текстовый запрос, теперь должны использовать текстовый поиск (новый), поскольку функция «Поиск поблизости (новый)» не поддерживает ввод текста.
- Формат ответа JSON для функции «Поиск мест поблизости» (новый) изменился по сравнению с форматом устаревших API. Подробнее см. в статье «Миграция ответа API Places» .
В следующей таблице перечислены параметры функции Nearby Search (устаревшая версия), которые были переименованы или изменены для функции Nearby Search (новая версия), а также параметры, которые больше не поддерживаются.
Текущий параметр | Новый параметр | Примечания |
---|---|---|
keyword | Не поддерживается. Используйте вместо этого функцию «Текстовый поиск (новый)» . | |
language | languageCode | |
location | locationRestriction | Необходимый. |
maxprice/minprice |
| Не поддерживается. |
maxResultCount | Новый параметр. | |
opennow |
| Не поддерживается. |
pagetoken | Не поддерживается. | |
radius |
| Используйте locationRestriction сейчас. |
rankby | rankPreference | |
regionCode | Новый параметр. | |
type | includedTypes excludedTypes includedPrimaryTypes excludedPrimaryTypes | Новые параметры также принимают значения нескольких типов. Устаревший API принимает только одно значение. |
Пример запроса
В следующем примере GET-запроса используется функция поиска поблизости (устаревшая). В этом примере вы запрашиваете JSON-ответ, содержащий информацию о заведениях типа restaurant
, и передаёте все параметры в виде URL-адресов:
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=37.7937%2C-122.3965&radius=500&type=restaurant&key=API_KEY'
При использовании функции «Поиск поблизости (новый)» вы отправляете POST-запрос и передаёте все параметры в теле JSON-запроса или в заголовках. В этом примере также используется маска поля, поэтому ответ включает только отображаемое название и форматированный адрес места:
curl -X POST -d '{ "includedTypes": ["restaurant"], "locationRestriction": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965}, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: places.displayName,places.formattedAddress" \ https://places.googleapis.com/v1/places:searchNearby