Поиск на маршруте
Чтобы использовать новую версию текстового поиска для поиска вдоль маршрута, передайте в запросе предварительно рассчитанный маршрут из Routes API в виде ломаной линии. В ответе будут места, которые соответствуют критериям поиска и находятся рядом с указанным маршрутом.
Чтобы искать по пути:
-
Используйте Routes API, чтобы рассчитать маршрут, закодированная ломаная линия которого возвращается в ответе.
-
Используйте параметр
searchAlongRouteParameters.polyline.encodedPolyline, чтобы передать закодированную ломаную линию маршрута в текстовый поиск (New) и сместить результаты поиска в сторону маршрута. В ответе будут перечислены места, которые соответствуют критериям поиска и находятся рядом с указанным маршрутом.
API Explorer позволяет отправлять запросы в реальном времени, чтобы вы могли ознакомиться с API и его возможностями:
По умолчанию новая версия текстового поиска выполняет поиск по всему маршруту от начальной до конечной точки, как определено полилинией. В примере ниже ломаная линия определяет маршрут от:
- Откуда: 1600 Amphitheatre Parkway, Mountain View, CA
- Пункт назначения: 24 Willie Mays Plaza, San Francisco, CA.
Кодированная ломаная линия для этого маршрута представлена строкой:
wblcFptchVIFOd@G@EVw@Ms@dHKR}ApNA`AF~@Hf@TjAb@bBb@~@n@p@^Rd@~@Vz@HVz@nDLt@?d@Kr@c@~@mD`G?`@aEfGkCnDuChDm`@bb@[`@{GhHeEdEciBnnBkC`DkC~DaClEuKjT_Z|l@Qb@iR~_@}EzJ_AdB_Und@kAfCaOjZkg@vcAqBzD_]rr@iBlEaBxEgArD}AlG}AhHsA`IeAnH{@dIq@dJgL~iBq@rHu@vGgAtHwArHaBhHkBzG_DpJ}Nbc@iBhGkA|EgC|LcIjb@oAhG_AvDgAdDkApC_BzCiBpCsFvGii@vn@scAxlAmLjNgSzUeRjT{TzWqExEmG|FuNlMmMhLaRvPqOlNmbAl}@mFlF{PlOmJfIoElE}LtMiSbU_H`I}}@jcAwl@vp@oAbBqA~BeAhCm@tBg@fCWrBQ~BI|DaB~rBO~D[bEa@`Dm@pDaAdE{@vC_BbEkB~Def@|z@sEzHKJeS~]}K`S{\\~l@cXpe@sBpDm@bAuCxDkBrBiC~BwCtByBnAcBx@}Bt@{Bn@gh@|LaOpDeFhAoDj@aE^kVrA_E^iEr@yD~@uBr@gMjF_EnAcCh@eFr@_DRsAD}@Jsu@xCWDqIV}BCeCOyDm@cBa@_DmA}JeE_CwAsBcBiBoBuAqBmOoX{CuEkB_CoDqDkVoUoD{CeE_DkEkC_FeCqB}@sDuAoDgAeCe@cCW}CK}BDaDTeOlBcuBrYaNlBq@Dyd@rGyFt@yBb@eBf@oCnAoBlAkIpGkAp@wBbAaCt@oFdAwKjBoGxA{FbByIjC_HfB_@KmNdDuC|@uFzBcH|C{@\\[?sBv@}@VaBVoA@y@EmAQcA[w@]aBkAeAkA}BuDUKs@uAqBsCwBcCgAiAiN_MyKsJsG{GkBaBiBuA{BwAwDkBcOaHiC_AiCg@}BQcCAcBHqBVkB`@qEjAu@LgCVgAHwG@sG?mABsH^eNr@mBXy@NqBt@uAt@aBlAkAlA}BtCyApBiAdB_BxB{A`B}@j@oAf@s@PeCVcIf@gAAkAQy@YiAo@_A{@_DgEgJqM_DeEaM}PoBiCzAsBw@kAdAGVk@f@q@z@CВ следующем примере для уточнения результатов поиска используется закодированная ломаная линия маршрута:
curl -X POST -d '{
"textQuery" : "Spicy Vegetarian Food",
"searchAlongRouteParameters": {
"polyline": {
"encodedPolyline": "ROUTE_POLYLINE"
}
}
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \
'https://places.googleapis.com/v1/places:searchText'Ответ содержит места, соответствующие критериям поиска, с учетом маршрута:
{ "places": [ { "formattedAddress": "60 Morris St, San Francisco, CA 94107, USA", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Umami Express", "languageCode": "en" } }, { "formattedAddress": "1130 4th St, San Francisco, CA 94158, USA", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "House of Tadu Ethiopian Kitchen", "languageCode": "en" } }, { "formattedAddress": "1602 El Camino Real Ste A, Belmont, CA 94002, USA", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Eats Meets West Bowls", "languageCode": "en" } }, /.../ ] }
Необязательно задавать приоритет для всего маршрута. Например, вы можете выполнить поиск, когда уже проехали половину пути. В этом случае вы можете указать явную начальную точку маршрута для поиска, чтобы переопределить начальную точку, заданную в кодированной ломаной линии. В следующем примере указаны координаты широты и долготы Сан-Матео (Калифорния, США), который находится примерно на середине ломаной линии маршрута:
curl -X POST -d '{
"textQuery" : "Spicy Vegetarian Food",
"searchAlongRouteParameters": {
"polyline": {
"encodedPolyline": "ROUTE_POLYLINE"
}
},
"routingParameters": {
"origin": {
"latitude": 37.56617,
"longitude": -122.30870
}
}
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \
'https://places.googleapis.com/v1/places:searchText'Попробовать
В API Explorer можно отправлять примеры запросов, чтобы ознакомиться с API и его возможностями.
Нажмите на значок API api в правой части страницы.
При необходимости измените параметры запроса.
Нажмите кнопку Выполнить. В диалоговом окне выберите аккаунт, который хотите использовать для запроса.
На панели APIs Explorer нажмите на значок полноэкранного режима , чтобы развернуть окно APIs Explorer.