Введение
API Places (устаревшая версия) поддерживает текстовый поиск (устаревшая версия) . Если вы знакомы с текстовым поиском (устаревшая версия), то в новой версии текстового поиска внесены следующие изменения:
- В текстовом поиске (новая версия) используются HTTP POST-запросы. Параметры передаются в теле запроса или в заголовках как часть HTTP POST-запроса. В отличие от этого, в текстовом поиске (старая версия) параметры URL передаются с помощью HTTP GET-запроса.
- Требуется маскирование полей. Необходимо указать, какие поля вы хотите получить в ответе. По умолчанию список возвращаемых полей отсутствует. Если вы опустите этот список, методы вернут ошибку. Для получения дополнительной информации см. FieldMask .
- Функция текстового поиска (новая) поддерживает как ключи API , так и токены OAuth в качестве механизма аутентификации.
- В текстовом поиске (новая функция) в качестве формата ответа поддерживается только JSON.
В функции текстового поиска (устаревшая версия) можно указывать координаты широты и долготы в строке запроса. Например:
query=37.4239,-122.0925. Эта опция не поддерживается в функции текстового поиска (новая версия).Используйте функцию обратного геокодирования для поиска по координатам и получения адреса, или функцию поиска поблизости (новая функция) для поиска мест вокруг определенного местоположения.
- Формат JSON-ответа для текстового поиска (новый) изменился по сравнению с форматом устаревших API. Для получения более подробной информации см. раздел «Перенос ответа API Places» .
В таблице ниже перечислены параметры текстового поиска (устаревшая версия), которые были переименованы или изменены для текстового поиска (новая версия), а также параметры, которые больше не поддерживаются.
| Текущий параметр | Новый параметр | Примечания |
|---|---|---|
evOptions | Новый параметр. | |
language | languageCode | |
location | locationBias | |
maxprice/minprice | priceLevels | |
opennow | openNow | |
pagetoken | pageToken | |
query | textQuery | Обязательно к заполнению во всех запросах. |
radius | locationBias | Укажите радиус при определении параметра locationBias . |
region | regionCode | |
type | includedType | Принимает только одно значение. |
strictTypeFiltering | Новый параметр. |
Пример запроса
В следующем примере GET-запроса используется текстовый поиск (устаревшая версия). В этом примере вы запрашиваете JSON-ответ, содержащий информацию о "Острой вегетарианской еде в Сиднее, Австралия", и передаете все параметры в качестве параметров URL:
curl -L -X GET \ 'https://maps.googleapis.com/maps/api/place/textsearch/json?query=Spicy%20Vegetarian%20Food%20in%20Sydney%20Australia&key=API_KEY
При использовании текстового поиска (новая функция) вы отправляете POST-запрос, передавая все параметры в теле JSON-запроса или в заголовках POST-запроса. В этом примере также используется маска поля, поэтому ответ содержит только отображаемое имя и отформатированный адрес места:
curl -X POST -d '{
"textQuery" : "Spicy Vegetarian Food in Sydney, Australia"
}' \
-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:searchText'