Поиск по маршруту
Чтобы использовать Text Search (New) для поиска по маршруту, передайте предварительно рассчитанный маршрут из Routes API в запросе в виде полилинии. Ответ содержит места, которые соответствуют критериям поиска и также находятся вблизи указанного маршрута.
Для поиска по маршруту:
Используйте API маршрутов для расчета маршрута, который возвращает закодированную полилинию маршрута в ответе.
Используйте параметр
searchAlongRouteParameters.polyline.encodedPolyline
, чтобы передать закодированную полилинию маршрута в Text Search (New), чтобы сместить результаты поиска в сторону маршрута. Затем ответ содержит места, которые соответствуют критериям поиска и также расположены вблизи указанного маршрута.
API Explorer позволяет вам делать запросы в реальном времени, чтобы вы могли ознакомиться с API и его параметрами:
По умолчанию Text Search (New) выполняет поиск по всему маршруту от исходной точки до конечной, как определено полилинией. В следующем примере полилиния определяет маршрут от:
- Происхождение : 1600 Amphitheatre Parkway, Mountain View, CA
- Место назначения : 24 Willie Mays Plaza, Сан-Франциско, Калифорния
Закодированная полилиния поездки для этого маршрута представлена строкой:
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 в правой части страницы.
При желании можно изменить параметры запроса.
Нажмите кнопку «Выполнить» . В диалоговом окне выберите учетную запись, которую вы хотите использовать для выполнения запроса.
На панели обозревателя API выберите значок полноэкранного режима, чтобы развернуть окно обозревателя API.