جستجو در طول یک مسیر

برای استفاده از جستجوی متن (جدید) برای جستجو در طول یک مسیر، مسیر از پیش محاسبه‌شده از Routes API را در درخواست به‌عنوان چند خط ارسال کنید. پاسخ حاوی مکان هایی است که با معیارهای جستجو مطابقت دارند و همچنین در نزدیکی مسیر مشخص شده قرار دارند.

برای جستجو در مسیر:

  1. از Routes API برای محاسبه مسیری استفاده کنید که چند خط کدگذاری شده مسیر را در پاسخ برمی گرداند .

  2. از پارامتر searchAlongRouteParameters.polyline.encodedPolyline برای ارسال چند خط کدگذاری شده مسیر به جستجوی متن (جدید) استفاده کنید تا نتایج جستجو را به مسیر سوگیری کنید. سپس پاسخ حاوی مکان هایی است که با معیارهای جستجو مطابقت دارند و همچنین در نزدیکی مسیر مشخص شده قرار دارند.

به طور پیش فرض، جستجوی متن (جدید) جستجو را در طول کل مسیر از مبدا تا مقصد، همانطور که توسط چند خط تعریف شده است، انجام می دهد. در مثال زیر، polyline مسیر را از:

  • مبدا : 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'