Переход на поиск поблизости (новинка)

API Places поддерживает поиск поблизости (устаревшая версия) . Если вы знакомы с функцией «Поиск поблизости» (устаревшая версия), « Поиск поблизости» (новая модель) вносит следующие изменения:

  • Новый поиск поблизости использует запросы HTTP POST. Передавайте параметры в теле запроса или в заголовках как часть запроса HTTP POST. Напротив, при поиске поблизости (устаревшая версия) параметры URL-адреса передаются с помощью HTTP-запроса GET.
  • Требуется маскировка полей. Вы должны указать, какие поля вы хотите вернуть в ответе. Не существует списка возвращаемых полей по умолчанию. Если вы опустите этот список, методы вернут ошибку. Для получения дополнительной информации см. FieldMask .
  • Поиск поблизости (новинка) поддерживает как ключи API , так и токены OAuth в качестве механизма аутентификации.
  • В качестве формата ответа в функции «Поиск поблизости» (новинка) поддерживается только JSON.
  • Все запросы, включающие текстовый запрос, теперь должны использовать текстовый поиск (новое), поскольку поиск поблизости (новое) не поддерживает ввод текста.
  • Формат ответа JSON для поиска поблизости (новый) изменился по сравнению с форматом устаревших API. Дополнительные сведения см. в разделе Миграция ответа Places API .

В следующей таблице перечислены параметры поиска поблизости (старая версия), которые были переименованы или изменены для поиска поблизости (новая версия), а также параметры, которые больше не поддерживаются.

Текущий параметр Новый параметр Примечания
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 или в заголовках как часть запроса POST. В этом примере также используется маска поля, поэтому ответ включает только отображаемое имя и форматированный адрес места:

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