Введение
Autocomplete (New) — это веб-сервис, который возвращает прогнозы мест и запросов в ответ на HTTP-запрос. В запросе укажите строку текстового поиска и географические границы, которые управляют областью поиска.
Автозаполнение (новое) может сопоставлять полные слова и подстроки ввода, разрешая названия мест, адреса и плюс-коды . Таким образом, приложения могут отправлять запросы по мере ввода текста пользователем, чтобы предоставлять прогнозы мест и запросов на лету.
Ответ от Autocomplete (New) может содержать два типа прогнозов:
- Прогнозы мест : Места, такие как предприятия, адреса и точки интереса, на основе указанной входной текстовой строки и области поиска. Прогнозы мест возвращаются по умолчанию.
- Прогнозы запросов : строки запросов, соответствующие входной текстовой строке и области поиска. Прогнозы запросов не возвращаются по умолчанию. Используйте параметр запроса
includeQueryPredictions
, чтобы добавить прогнозы запросов в ответ.
Например, вы вызываете Autocomplete (New), используя в качестве входных данных строку, содержащую частичный пользовательский ввод, "Sicilian piz", с областью поиска, ограниченной Сан-Франциско, Калифорния. Затем ответ содержит список предсказаний мест , которые соответствуют строке поиска и области поиска, например, ресторан под названием "Sicilian Pizza Kitchen", вместе с подробностями о месте.
Возвращенные прогнозы мест предназначены для представления пользователю, чтобы помочь ему выбрать предполагаемое место. Вы можете сделать запрос Place Details (New), чтобы получить больше информации о любом из возвращенных прогнозов мест.
Ответ также может содержать список прогнозов запроса , которые соответствуют строке поиска и области поиска, например, "Sicilian Pizza & Pasta". Каждое прогнозирование запроса в ответе включает text
поле, содержащее рекомендуемую строку поиска текста. Используйте эту строку в качестве входных данных для Text Search (New) , чтобы выполнить более подробный поиск.
API Explorer позволяет вам делать запросы в реальном времени, чтобы вы могли ознакомиться с API и его параметрами:
Автозаполнение (новых) запросов
Запрос автозаполнения (новый) — это HTTP-запрос POST к URL-адресу в форме:
https://places.googleapis.com/v1/places:autocomplete
Передайте все параметры в теле запроса JSON или в заголовках как часть запроса POST. Например:
curl -X POST -d '{ "input": "pizza", "locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Поддерживаемые параметры
Параметр | Описание |
---|---|
| Текстовая строка для поиска (полные слова, подстроки, названия мест, адреса и коды). |
| Список полей, разделенных запятыми, указывающих, какие поля следует вернуть в ответе. |
Ограничивает результаты местами, соответствующими одному из пяти указанных основных типов. | |
Если true, то включает предприятия без физического местоположения (предприятия, обслуживающие территорию). По умолчанию false. | |
Если true, включает в ответ как прогнозы места, так и запроса. По умолчанию false. | |
Массив из 15 двухсимвольных кодов стран для ограничения результатов. | |
Смещение символа Unicode с нулевым началом в позиции курсора во входной строке, влияющее на предсказания. По умолчанию — длина входных данных. | |
Предпочтительный язык (код IETF BCP-47) для результатов. По умолчанию заголовок Accept-Language или 'en'. | |
Указывает область (круг или прямоугольник), к которой будут смещаться результаты поиска, позволяя результаты за пределами области. Не может использоваться с locationRestriction. | |
Указывает область (круг или прямоугольник) для ограничения результатов поиска. Результаты за пределами этой области исключаются. Не может использоваться с locationBias. | |
Точка отправления (широта, долгота), используемая для расчета расстояния по прямой (расстояние в метрах) до предполагаемых пунктов назначения. | |
Код региона, используемый для форматирования ответа и предложений по смещению (например, «uk», «fr»). | |
Созданная пользователем строка для группировки вызовов автозаполнения в сеанс для выставления счетов. |
Об ответе
Autocomplete (New) возвращает объект JSON в качестве ответа. В ответе:
- Массив
suggestions
содержит все предсказанные места и запросы в порядке их предполагаемой релевантности. Каждое место представлено полемplacePrediction
, а каждый запрос представлен полемqueryPrediction
. - Поле
placePrediction
содержит подробную информацию об одном прогнозируемом месте, включая идентификатор места и текстовое описание. - Поле
queryPrediction
содержит подробную информацию об одном прогнозе запроса.
Полный объект JSON имеет вид:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 }] }, ... }, { "queryPrediction": { "text": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 }] }, ... } ...] }
Требуемые параметры
вход
Текстовая строка, по которой нужно искать. Укажите полные слова и подстроки, названия мест, адреса и плюс-коды . Служба автозаполнения (новая) возвращает совпадения кандидатов на основе этой строки и упорядочивает результаты на основе их предполагаемой релевантности.
Необязательные параметры
FieldMask
Укажите список полей для возврата в ответе, создав маску поля ответа . Передайте маску поля ответа в метод, используя HTTP-заголовок
X-Goog-FieldMask
.Укажите разделенный запятыми список полей предложений для возврата. Например, чтобы получить
suggestions.placePrediction.text.text
иsuggestions.queryPrediction.text.text
предложения.X-Goog-FieldMask: suggestions.placePrediction.text.text,suggestions.queryPrediction.text.text
Используйте
*
для извлечения всех полей.X-Goog-FieldMask: *
включеныОсновные типы
Место может иметь только один основной тип из типов, перечисленных в Таблице A или Таблице B. Например, основным типом может быть
"mexican_restaurant"
или"steak_house"
.По умолчанию API возвращает все места на основе
input
параметра, независимо от значения первичного типа, связанного с местом. Ограничьте результаты определенным первичным типом или первичными типами, передав параметрincludedPrimaryTypes
.Используйте этот параметр, чтобы указать до пяти значений типа из таблицы A или таблицы B. Место должно соответствовать одному из указанных значений основного типа, чтобы быть включенным в ответ.
Этот параметр может также включать вместо этого один из
(regions)
или(cities)
. Тип коллекции(regions)
фильтрует области или подразделения, такие как кварталы и почтовые индексы. Тип коллекции(cities)
фильтрует места, которые Google идентифицирует как города.Запрос отклоняется с ошибкой
INVALID_REQUEST
, если:- Указано более пяти типов.
- Любой тип указывается в дополнение к
(cities)
или(regions)
. - Указываются все нераспознанные типы.
includePureServiceAreaBusinesses
Если установлено значение
true
, ответ включает компании, которые посещают или доставляют товары клиентам напрямую, но не имеют физического местонахождения. Если установлено значениеfalse
, API возвращает только компании с физическим местонахождением.includeQueryPredictions
Если
true
, ответ включает как прогнозы места, так и запроса. Значение по умолчанию —false
, что означает, что ответ включает только прогнозы места.включеныRegionCodes
Включать только результаты из списка указанных регионов, указанных как массив из двухсимвольных значений ccTLD («домен верхнего уровня»), не более 15. Если этот параметр опущен, к ответу не применяются ограничения. Например, чтобы ограничить регионы Германией и Францией:
"includedRegionCodes": ["de", "fr"]
Если указать и
locationRestriction
, иincludedRegionCodes
, результаты будут расположены в области пересечения двух настроек.вводСмещение
Смещение символа Unicode, начинающееся с нуля и указывающее позицию курсора в
input
. Позиция курсора может влиять на то, какие прогнозы будут возвращены. Если пусто, по умолчанию используется длинаinput
.код языка
Предпочтительный язык, на котором следует возвращать результаты. Результаты могут быть на смешанных языках, если язык, используемый во
input
, отличается от значения, указанногоlanguageCode
, или если возвращаемое место не имеет перевода с локального языка наlanguageCode
.- Для указания предпочитаемого языка необходимо использовать коды языков IETF BCP-47 .
- Если
languageCode
не указан, API использует значение, указанное в заголовкеAccept-Language
. Если ни один из них не указан, по умолчанию используетсяen
. Если указан недопустимый код языка, API возвращает ошибкуINVALID_ARGUMENT
. - Предпочтительный язык имеет небольшое влияние на набор результатов, которые API выбирает для возврата, и порядок, в котором они возвращаются. Это также влияет на способность API исправлять орфографические ошибки.
- API пытается предоставить адрес улицы, который будет читаем как для пользователя, так и для местного населения, и в то же время отражать пользовательский ввод. Прогнозы мест форматируются по-разному в зависимости от пользовательского ввода в каждом запросе.
- Сначала выбираются соответствующие термины во
input
параметре, при этом используются имена, соответствующие языковым предпочтениям, указанным параметромlanguageCode
(если они доступны), в противном случае используются имена, которые лучше всего соответствуют введенным пользователем данным. - Адреса домов форматируются на местном языке, по возможности в понятном для пользователя тексте, только после того, как будут выбраны соответствующие термины, соответствующие терминам во
input
параметре. - Все остальные адреса возвращаются на предпочитаемом языке после того, как были выбраны соответствующие термины для соответствия терминам во
input
параметре. Если имя недоступно на предпочитаемом языке, API использует ближайшее соответствие.
- Сначала выбираются соответствующие термины во
местоположениеПредвзятость или ограничение местоположения
Вы можете указать
locationBias
илиlocationRestriction
, но не оба, чтобы определить область поиска. Думайте оlocationRestriction
как об указании региона, в котором должны быть результаты, аlocationBias
как об указании региона, в котором должны быть результаты, но могут быть за пределами области.местоположениеПредвзятость
Указывает область для поиска. Это местоположение служит смещением, что означает, что могут быть возвращены результаты вокруг указанного местоположения, включая результаты за пределами указанной области.
местоположениеОграничение
Указывает область для поиска. Результаты за пределами указанной области не возвращаются.
Укажите область
locationBias
илиlocationRestriction
как прямоугольную область просмотра или как круг .Окружность определяется точкой центра и радиусом в метрах. Радиус должен быть в диапазоне от 0,0 до 50000,0 включительно. Значение по умолчанию — 0,0. Для
locationRestriction
необходимо задать радиус больше 0,0. В противном случае запрос не вернет никаких результатов.Например:
"locationBias": { "circle": { "center": { "latitude": 37.7937, "longitude": -122.3965 }, "radius": 500.0 } }
Прямоугольник — это широтно-долготная область просмотра, представленная в виде двух диагонально противоположных
low
и высокой точек. Область просмотра считается замкнутой областью, то есть она включает ее границу. Границы широты должны находиться в диапазоне от -90 до 90 градусов включительно, а границы долготы должны находиться в диапазоне от -180 до 180 градусов включительно:- Если
low
=high
, область просмотра состоит из этой единственной точки. - Если
low.longitude
>high.longitude
, диапазон долготы инвертируется (область просмотра пересекает линию долготы 180 градусов). - Если
low.longitude
= -180 градусов, аhigh.longitude
= 180 градусов, область просмотра включает все долготы. - Если
low.longitude
= 180 градусов, аhigh.longitude
= -180 градусов, то диапазон долготы пуст.
Оба
low
иhigh
должны быть заполнены, и представленное поле не может быть пустым. Пустая область просмотра приводит к ошибке.Например, эта область просмотра полностью охватывает Нью-Йорк:
"locationBias": { "rectangle": { "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } } }
- Если
источник
Исходная точка, от которой рассчитывается расстояние по прямой до пункта назначения (возвращается как
distanceMeters
). Если это значение опущено, расстояние по прямой не будет возвращено. Необходимо указать как координаты широты и долготы:"origin": { "latitude": 40.477398, "longitude": -74.259087 }
Код региона
Код региона, используемый для форматирования ответа, указанный как двухсимвольное значение ccTLD («домен верхнего уровня») . Большинство кодов ccTLD идентичны кодам ISO 3166-1, за некоторыми заметными исключениями. Например, ccTLD Соединенного Королевства — «uk» (.co.uk), а его код ISO 3166-1 — «gb» (технически для субъекта «Соединенное Королевство Великобритании и Северной Ирландии»).
Предложения также предвзяты на основе региональных кодов. Google рекомендует устанавливать
regionCode
в соответствии с региональными предпочтениями пользователя.Если указать недопустимый код региона, API возвращает ошибку
INVALID_ARGUMENT
. Параметр может повлиять на результаты в зависимости от применимого законодательства.sessionToken
Токены сеанса — это созданные пользователем строки, которые отслеживают вызовы Autocomplete (New) как «сеансы». Autocomplete (New) использует токены сеанса для группировки фаз запроса и выбора поиска пользователя с автозаполнением в отдельный сеанс для выставления счетов. Для получения дополнительной информации см. Токены сеанса .
Выберите параметры для смещения результатов
Параметры автозаполнения (новые) могут по-разному влиять на результаты поиска. В следующей таблице приведены рекомендации по использованию параметров на основе предполагаемого результата.Параметр | Рекомендации по использованию |
---|---|
regionBias | Устанавливается в соответствии с региональными предпочтениями пользователя. |
includedRegionCodes | Установите ограничение результатов списком указанных регионов. |
locationBias | Используйте, когда результаты предпочтительны в регионе или около него . Если применимо, определите регион как область просмотра карты, на которую смотрит пользователь. |
locationRestriction | Используйте только в том случае, если результаты за пределами региона не должны возвращаться. |
origin | Используйте, когда предполагается прямолинейное расстояние до каждого прогноза. |
Примеры автозаполнения (новые)
Ограничить поиск областью с помощью locationRestriction
locationRestriction
указывает область поиска. Результаты за пределами указанной области не возвращаются. В следующем примере вы используете locationRestriction
, чтобы ограничить запрос окружностью радиусом 5000 метров с центром в Сан-Франциско:
curl -X POST -d '{ "input": "Art museum", "locationRestriction": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Все результаты из указанных областей содержатся в массиве suggestions
:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q", "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q", "text": { "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "structuredFormat": { "mainText": { "text": "Asian Art Museum", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "secondaryText": { "text": "Larkin Street, San Francisco, CA, USA" } }, "types": [ "establishment", "museum", "point_of_interest" ] } }, { "placePrediction": { "place": "places/ChIJI7NivpmAhYARSuRPlbbn_2w", "placeId": "ChIJI7NivpmAhYARSuRPlbbn_2w", "text": { "text": "de Young Museum, Hagiwara Tea Garden Drive, San Francisco, CA, USA", "matches": [ { "endOffset": 15 } ] }, "structuredFormat": { "mainText": { "text": "de Young Museum", "matches": [ { "endOffset": 15 } ] }, "secondaryText": { "text": "Hagiwara Tea Garden Drive, San Francisco, CA, USA" } }, "types": [ "establishment", "point_of_interest", "tourist_attraction", "museum" ] } }, /.../ ] }
Вы также можете использовать locationRestriction
для ограничения поиска прямоугольным Viewport . Следующий пример ограничивает запрос центром Сан-Франциско:
curl -X POST -d '{ "input": "Art museum", "locationRestriction": { "rectangle": { "low": { "latitude": 37.7751, "longitude": -122.4219 }, "high": { "latitude": 37.7955, "longitude": -122.3937 } } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Результаты содержатся в массиве suggestions
:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJkQQVTZqAhYARHxPt2iJkm1Q", "placeId": "ChIJkQQVTZqAhYARHxPt2iJkm1Q", "text": { "text": "Asian Art Museum, Larkin Street, San Francisco, CA, USA", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "structuredFormat": { "mainText": { "text": "Asian Art Museum", "matches": [ { "startOffset": 6, "endOffset": 16 } ] }, "secondaryText": { "text": "Larkin Street, San Francisco, CA, USA" } }, "types": [ "point_of_interest", "museum", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJyQNK-4SAhYARO2DZaJleWRc", "placeId": "ChIJyQNK-4SAhYARO2DZaJleWRc", "text": { "text": "International Art Museum of America, Market Street, San Francisco, CA, USA", "matches": [ { "startOffset": 14, "endOffset": 24 } ] }, "structuredFormat": { "mainText": { "text": "International Art Museum of America", "matches": [ { "startOffset": 14, "endOffset": 24 } ] }, "secondaryText": { "text": "Market Street, San Francisco, CA, USA" } }, "types": [ "museum", "point_of_interest", "tourist_attraction", "art_gallery", "establishment" ] } } ] }
Смещение поиска в область с помощью locationBias
С locationBias
местоположение служит смещением, что означает, что могут быть возвращены результаты вокруг указанного местоположения, включая результаты за пределами указанной области. В следующем примере вы смещаете запрос к центру Сан-Франциско:
curl -X POST -d '{ "input": "Amoeba", "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Результаты теперь содержат гораздо больше элементов, включая результаты за пределами радиуса 5000 метров:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "electronics_store", "point_of_interest", "store", "establishment", "home_goods_store" ] } }, { "placePrediction": { "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw", "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw", "text": { "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Telegraph Avenue, Berkeley, CA, USA" } }, "types": [ "electronics_store", "point_of_interest", "establishment", "home_goods_store", "store" ] } }, ... ] }
Вы также можете использовать locationBias
для ограничения поиска прямоугольным Viewport . Следующий пример ограничивает запрос центром Сан-Франциско:
curl -X POST -d '{ "input": "Amoeba", "locationBias": { "rectangle": { "low": { "latitude": 37.7751, "longitude": -122.4219 }, "high": { "latitude": 37.7955, "longitude": -122.3937 } } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Хотя результаты поиска в прямоугольном окне просмотра отображаются в ответе, некоторые результаты находятся за пределами определенных границ из-за смещения. Результаты также содержатся в массиве suggestions
:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJr7uwwy58hYARBY-e7-QVwqw", "placeId": "ChIJr7uwwy58hYARBY-e7-QVwqw", "text": { "text": "Amoeba Music, Telegraph Avenue, Berkeley, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Telegraph Avenue, Berkeley, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, { "placePrediction": { "place": "places/ChIJRdmfADq_woARYaVhnfQSUTI", "placeId": "ChIJRdmfADq_woARYaVhnfQSUTI", "text": { "text": "Amoeba Music, Hollywood Boulevard, Los Angeles, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Hollywood Boulevard, Los Angeles, CA, USA" } }, "types": [ "point_of_interest", "store", "establishment" ] } }, /.../ ] }
Использовать включенные основные типы
Используйте параметр includedPrimaryTypes
для указания до пяти значений типа из Таблицы A , Таблицы B , или только (regions)
, или только (cities)
. Место должно соответствовать одному из указанных значений основного типа, чтобы быть включенным в ответ.
В следующем примере вы указываете input
строку «Футбол» и используете параметр includedPrimaryTypes
, чтобы ограничить результаты заведениями типа "sporting_goods_store"
:
curl -X POST -d '{ "input": "Soccer", "includedPrimaryTypes": ["sporting_goods_store"], "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 500.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Если вы опустите параметр includedPrimaryTypes
, то результаты могут включать заведения нежелательного вам типа, например "athletic_field"
.
Запросить прогнозы запросов
Прогнозы запросов не возвращаются по умолчанию. Используйте параметр запроса includeQueryPredictions
, чтобы добавить прогнозы запросов в ответ. Например:
curl -X POST -d '{ "input": "Amoeba", "includeQueryPredictions": true, "locationBias": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Массив suggestions
теперь содержит как прогнозы мест, так и прогнозы запросов, как показано выше в разделе Об ответе . Каждый прогноз запроса включает text
поле, содержащее рекомендуемую строку текстового поиска. Вы можете сделать запрос Text Search (New), чтобы получить больше информации о любом из возвращенных прогнозов запроса.
Использовать источник
В этом примере включите origin
в запрос как координаты широты и долготы. Когда вы включаете origin
, Autocomplete (New) включает поле distanceMeters
в ответ, которое содержит расстояние по прямой от origin
до destination. В этом примере origin устанавливается в центре Сан-Франциско:
curl -X POST -d '{ "input": "Amoeba", "origin": { "latitude": 37.7749, "longitude": -122.4194 }, "locationRestriction": { "circle": { "center": { "latitude": 37.7749, "longitude": -122.4194 }, "radius": 5000.0 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ https://places.googleapis.com/v1/places:autocomplete
Теперь ответ включает distanceMeters
:
{ "suggestions": [ { "placePrediction": { "place": "places/ChIJ5YQQf1GHhYARPKG7WLIaOko", "placeId": "ChIJ5YQQf1GHhYARPKG7WLIaOko", "text": { "text": "Amoeba Music, Haight Street, San Francisco, CA, USA", "matches": [ { "endOffset": 6 } ] }, "structuredFormat": { "mainText": { "text": "Amoeba Music", "matches": [ { "endOffset": 6 } ] }, "secondaryText": { "text": "Haight Street, San Francisco, CA, USA" } }, "types": [ "home_goods_store", "establishment", "point_of_interest", "store", "electronics_store" ], "distanceMeters": 3012 } } ] }
Расстояние, отсутствующее в ответе
В некоторых случаях distanceMeters
отсутствует в теле ответа, даже если origin
включен в запрос. Это может произойти в следующих сценариях:
-
distanceMeters
не учитывается при прогнозированииroute
. -
distanceMeters
не учитывается, если его значение равно0
, что имеет место для прогнозов, находящихся на расстоянии менее 1 метра от указанногоorigin
местоположения.
Клиентские библиотеки, пытающиеся прочитать поле distanceMeters
из проанализированного объекта, вернут поле со значением 0
Чтобы не вводить пользователей в заблуждение, не отображайте им нулевое расстояние.
Попробуйте!
API Explorer позволяет вам делать образцы запросов, чтобы вы могли ознакомиться с API и его параметрами.
Выберите значок API api в правой части страницы.
При желании можно изменить параметры запроса.
Нажмите кнопку «Выполнить» . В диалоговом окне выберите учетную запись, которую вы хотите использовать для выполнения запроса.
На панели обозревателя API выберите значок полноэкранного режима, чтобы развернуть окно обозревателя API.