Введение
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 | includedTypesexcludedTypesincludedPrimaryTypesexcludedPrimaryTypes | Новые параметры также принимают значения нескольких типов. Устаревший 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