रास्ते के जवाब की समीक्षा करें

यूरोपियन इकनॉमिक एरिया (ईईए) के डेवलपर

जब Routes API किसी रास्ते का हिसाब लगाता है, तो वह आपके दिए गए वेपॉइंट और कॉन्फ़िगरेशन पैरामीटर को इनपुट के तौर पर लेता है. इसके बाद, एपीआई एक जवाब देता है. इसमें डिफ़ॉल्ट रास्ते के साथ-साथ, एक या उससे ज़्यादा वैकल्पिक रास्ते भी शामिल होते हैं.

आपके अनुरोध किए गए फ़ील्ड के आधार पर, जवाब में अलग-अलग तरह के रास्ते और अन्य डेटा शामिल हो सकता है:

इसे जवाब में शामिल करने के लिए यह दस्तावेज़ देखें
वाहन के इंजन टाइप के हिसाब से, ईंधन या ऊर्जा की सबसे कम खपत वाला रास्ता. ईको-फ़्रेंडली रास्तों की सुविधा को कॉन्फ़िगर करना
ज़्यादा से ज़्यादा तीन वैकल्पिक रास्ते अन्य रास्तों के बारे में पूछना
पूरे रास्ते, रास्ते के हर लेग, और लेग के हर चरण के लिए पॉलीलाइन. रूट की पॉलीलाइन का अनुरोध करना
टोल टैक्स की अनुमानित कीमत. इसमें टोल टैक्स पर मिलने वाली छूट या ड्राइवर या वाहन के लिए उपलब्ध पास को ध्यान में रखा जाता है. टोल टैक्स का हिसाब लगाना
भाषा कोड और मेज़रमेंट यूनिट (इंपीरियल या मीट्रिक) के हिसाब से, स्थानीय भाषा में जवाब. स्थानीय भाषा के मुताबिक वैल्यू का अनुरोध करना
नेविगेशन के निर्देशों को एचटीएमएल टेक्स्ट स्ट्रिंग के तौर पर फ़ॉर्मैट करने के लिए, HTML_FORMATTED_NAVIGATION_INSTRUCTIONS को extraComputations में जोड़ें. अतिरिक्त कंप्यूटेशन

इनपुट के सभी विकल्पों की सूची देखने के लिए, रास्ते के उपलब्ध विकल्प और अनुरोध का मुख्य हिस्सा देखें.

जवाब का इस्तेमाल करके, अपने ग्राहकों को उनकी ज़रूरतों के हिसाब से सही रास्ता चुनने के लिए ज़रूरी जानकारी दी जा सकती है.

फ़ील्ड मास्क के बारे में जानकारी

किसी रास्ते का हिसाब लगाने के लिए, किसी तरीके को कॉल करते समय आपको फ़ील्ड मास्क की जानकारी देनी होगी. इससे यह तय होता है कि आपको जवाब में कौनसे फ़ील्ड चाहिए. वापस किए गए फ़ील्ड की कोई डिफ़ॉल्ट सूची नहीं होती. अगर इस सूची को शामिल नहीं किया जाता है, तो तरीके गड़बड़ी का मैसेज दिखाते हैं.

इस दस्तावेज़ में दिए गए उदाहरणों में, फ़ील्ड मास्क को ध्यान में रखे बिना पूरा रिस्पॉन्स ऑब्जेक्ट दिखाया गया है. प्रोडक्शन एनवायरमेंट में, आपके जवाब में सिर्फ़ वे फ़ील्ड शामिल होंगे जिन्हें आपने फ़ील्ड मास्क में साफ़ तौर पर बताया है.

ज़्यादा जानकारी के लिए, चुनें कि कौनसी जानकारी दिखानी है लेख पढ़ें.

कॉपीराइट दिखाने के बारे में जानकारी

अपने उपयोगकर्ताओं को नतीजे दिखाते समय, आपको कॉपीराइट से जुड़ा यह स्टेटमेंट शामिल करना होगा:

Powered by Google, ©YEAR Google

उदाहरण के लिए:

Powered by Google, ©2023 Google

रास्तों, लेग, और चरणों के बारे में जानकारी

Routes API से मिले जवाब को देखने से पहले, आपको उन कॉम्पोनेंट के बारे में पता होना चाहिए जिनसे कोई रूट बनता है:

रास्ता, लेग, और चरण.

आपके जवाब में, इनमें से हर रूट कॉम्पोनेंट के बारे में जानकारी हो सकती है:

  • रूट: यात्रा शुरू करने की जगह से लेकर मंज़िल तक की पूरी यात्रा. इसमें बीच में पड़ने वाले वेपॉइंट भी शामिल हैं. किसी रास्ते में एक या उससे ज़्यादा लेग होते हैं.

  • लेग: किसी रास्ते में एक वेपॉइंट से दूसरे वेपॉइंट तक का रास्ता. हर लेग में एक या उससे ज़्यादा अलग-अलग चरण होते हैं.

    एक रास्ते में, हर वेपॉइंट से अगले वेपॉइंट तक के पाथ के लिए एक अलग लेग होता है. उदाहरण के लिए, अगर रास्ते में एक ऑरिजिन वेपॉइंट और एक डेस्टिनेशन वेपॉइंट है, तो रास्ते में एक लेग होगा. शुरुआती और आखिरी जगह के बाद, रास्ते में जोड़े जाने वाले हर अतिरिक्त वेपॉइंट के लिए, एपीआई एक अलग लेग जोड़ता है. इस अतिरिक्त वेपॉइंट को इंटरमीडिएट वेपॉइंट कहा जाता है.

    एपीआई, पास-थ्रू इंटरमीडिएट वेपॉइंट के लिए कोई लेग नहीं जोड़ता. उदाहरण के लिए, किसी रास्ते में शुरुआत की जगह का वेपॉइंट, बीच का वेपॉइंट, और मंज़िल का वेपॉइंट शामिल है. ऐसे में, शुरुआत की जगह से मंज़िल तक का रास्ता सिर्फ़ एक लेग का होगा. हालांकि, यह रास्ता बीच के वेपॉइंट से होकर गुज़रेगा. पास-थ्रू वेपॉइंट के बारे में ज़्यादा जानकारी के लिए, पास-थ्रू वेपॉइंट तय करना लेख पढ़ें.

  • चरण: रास्ते के किसी लेग के लिए दिया गया एक निर्देश. स्टेप, किसी रास्ते की सबसे छोटी इकाई होती है. उदाहरण के लिए, किसी चरण में "मेन स्ट्रीट पर बाएं मुड़ें" लिखा हो सकता है.

जवाब में क्या शामिल होता है

एपीआई से मिली जानकारी को दिखाने वाले JSON ऑब्जेक्ट में, ये टॉप-लेवल प्रॉपर्टी शामिल होती हैं:

  • routes, Route टाइप के एलिमेंट का कलेक्शन. routes कलेक्शन में, एपीआई से मिले हर रास्ते के लिए एक एलिमेंट होता है. अरे में ज़्यादा से ज़्यादा पांच एलिमेंट हो सकते हैं: डिफ़ॉल्ट रास्ता, ईको-फ़्रेंडली रास्ता, और ज़्यादा से ज़्यादा तीन वैकल्पिक रास्ते.

  • geocodingResults, GeocodingResults टाइप के एलिमेंट का कलेक्शन. अनुरोध में मौजूद हर जगह (शुरुआत की जगह, मंज़िल या बीच का वेपॉइंट) के लिए, एपीआई जगह के आईडी की खोज करता है. आपने इस जगह को पते की स्ट्रिंग या Plus Code के तौर पर बताया है. इस कलेक्शन के हर एलिमेंट में, किसी जगह का आईडी होता है. अनुरोध में जगह के आईडी या अक्षांश/देशांतर निर्देशांक के तौर पर बताई गई जगहों को शामिल नहीं किया जाता. अगर आपने जगह के आईडी या अक्षांश और देशांतर के निर्देशांकों का इस्तेमाल करके सभी जगहों की जानकारी दी है, तो यह कलेक्शन नहीं दिया जाता.

  • fallbackInfo, जो FallbackInfo टाइप का है. अगर एपीआई, इनपुट की गई सभी प्रॉपर्टी के आधार पर रास्ते का हिसाब नहीं लगा पाता है, तो हो सकता है कि वह हिसाब लगाने के लिए कोई दूसरा तरीका इस्तेमाल करे. फ़ॉलबैक मोड का इस्तेमाल करने पर, इस फ़ील्ड में फ़ॉलबैक रिस्पॉन्स के बारे में पूरी जानकारी होती है. अगर ऐसा नहीं है, तो यह फ़ील्ड सेट नहीं किया जाता.

जवाब का फ़ॉर्मैट ऐसा होता है:

{
  // The routes array.
  "routes": [
    {
      object (Route)
    }
  ],
  // The place ID lookup results.
  "geocodingResults": [
    {
      object (GeocodedWaypoint)
    }
  ],
  // The fallback property.
  "fallbackInfo": {
    object (FallbackInfo)
  }
}

रास्तों के कलेक्शन को डिकोड करना

जवाब में routes कलेक्शन शामिल होता है. इसमें हर कलेक्शन एलिमेंट, Route टाइप का होता है. अरे का हर एलिमेंट, यात्रा शुरू करने की जगह से मंज़िल तक के पूरे रास्ते को दिखाता है. एपीआई हमेशा कम से कम एक रूट दिखाता है. इसे डिफ़ॉल्ट रूट कहा जाता है.

आपके पास अन्य रास्तों का अनुरोध करने का विकल्प होता है. अगर आपने ईको-फ़्रेंडली रास्ते का अनुरोध किया है, तो कलेक्शन में दो एलिमेंट हो सकते हैं: डिफ़ॉल्ट रास्ता और ईको-फ़्रेंडली रास्ता. इसके अलावा, जवाब में ज़्यादा से ज़्यादा तीन वैकल्पिक रास्ते जोड़ने के लिए, अनुरोध में computeAlternativeRoutes को true पर सेट करें.

अरे में मौजूद हर रूट की पहचान, routeLabels अरे प्रॉपर्टी से की जाती है:

वैल्यू ब्यौरा
DEFAULT_ROUTE डिफ़ॉल्ट रूट की पहचान करता है.
FUEL_EFFICIENT इससे ईको-फ़्रेंडली रास्ते की जानकारी मिलती है.
DEFAULT_ROUTE_ALTERNATE Indicates an alternative route.

legs कलेक्शन में, रास्ते के हर लेग की जानकारी होती है. बाकी प्रॉपर्टी, जैसे कि distanceMeters, duration, और polyline, में पूरे रास्ते की जानकारी होती है:

{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "routeLabels": [string],
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  }
  "routeToken": string
}

ड्राइविंग की मौजूदा स्थितियों और अन्य वजहों से, डिफ़ॉल्ट रास्ता और ईको-फ़्रेंडली रास्ता एक ही हो सकता है. इस मामले में, routeLabels कलेक्शन में दोनों लेबल शामिल होते हैं: DEFAULT_ROUTE और FUEL_EFFICIENT.

{
  "routes": [
    {
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ],
     …
    }
  ]
}

legs कलेक्शन को समझना

जवाब में मौजूद हर route में एक legs कलेक्शन होता है. इसमें मौजूद हर legs कलेक्शन एलिमेंट, RouteLeg टाइप का होता है. कलेक्शन में मौजूद हर लेग, रास्ते में एक वेपॉइंट से अगले वेपॉइंट तक का पाथ तय करता है. किसी रूट में हमेशा कम से कम एक लेग होता है.

legs प्रॉपर्टी में, steps कलेक्शन में मौजूद लेग के हर चरण की जानकारी होती है. बाकी प्रॉपर्टी, जैसे कि distanceMeters, duration, और polyline में लेग के बारे में जानकारी होती है.

{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}

चरणों के कलेक्शन को समझना

रिस्पॉन्स में मौजूद हर लेग में एक steps कलेक्शन होता है. इसमें मौजूद हर steps एलिमेंट , RouteLegStep टाइप का होता है. एक चरण, लेग में दिए गए किसी एक निर्देश से जुड़ा होता है. एक लेग में हमेशा कम से कम एक चरण होता है.

steps कलेक्शन के हर एलिमेंट में, NavigationInstruction टाइप की navigationInstruction प्रॉपर्टी शामिल होती है. इसमें चरण के निर्देश होते हैं. उदाहरण के लिए:

"navigationInstruction": {
  "maneuver": "TURN_LEFT",
  "instructions": "Turn left toward Frontage Rd"
}

instructions में, इस चरण के बारे में ज़्यादा जानकारी हो सकती है. उदाहरण के लिए:

"navigationInstruction": {
  "maneuver": "TURN_SLIGHT_LEFT",
  "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days"
}

इस चरण में मौजूद बाकी प्रॉपर्टी, चरण के बारे में जानकारी देती हैं. जैसे, distanceMeters, duration, और polyline:

{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  }
}

चरण के निर्देशों की भाषा तय करना

एपीआई, स्थानीय भाषा में रास्ते की जानकारी दिखाता है. अगर ज़रूरी हो, तो इसे उपयोगकर्ता की पसंदीदा भाषा को ध्यान में रखते हुए, ऐसी लिपि में ट्रांसलिट्रेट किया जाता है जिसे उपयोगकर्ता पढ़ सके. पते के सभी कॉम्पोनेंट एक ही भाषा में दिखाए जाते हैं.

  • अनुरोध के languageCode पैरामीटर का इस्तेमाल करके, इस्तेमाल की जा सकने वाली भाषाओं की सूची से, रास्ते की भाषा को साफ़ तौर पर सेट करें. Google, इस्तेमाल की जा सकने वाली भाषाओं की सूची को अक्सर अपडेट करता रहता है. इसलिए, हो सकता है कि इस सूची में सभी भाषाएं शामिल न हों.

  • अगर चुनी गई भाषा में कोई नाम उपलब्ध नहीं है, तो एपीआई सबसे मिलते-जुलते नाम का इस्तेमाल करता है.

  • चुनी गई भाषा से, एपीआई से मिलने वाले नतीजों के सेट और उनके क्रम पर असर पड़ सकता है. जियोकोडर, भाषा के हिसाब से शॉर्ट फ़ॉर्म का अलग-अलग मतलब निकालता है. जैसे, सड़क के टाइप के लिए इस्तेमाल किए जाने वाले शॉर्ट फ़ॉर्म या समानार्थी शब्द, जो एक भाषा में मान्य हो सकते हैं, लेकिन दूसरी भाषा में नहीं. उदाहरण के लिए, हंगेरियन भाषा में utca और tér, street के समानार्थी शब्द हैं.

geocodingResults कलेक्शन को समझना

अनुरोध में मौजूद हर जगह (शुरुआती जगह, मंज़िल या बीच का वेपॉइंट) के लिए, जिसे पते की स्ट्रिंग या Plus Code के तौर पर बताया गया है, एपीआई सबसे काम की जगह ढूंढने की कोशिश करता है. इस जगह का एक आईडी होता है. geocodingResults कलेक्शन के हर एलिमेंट में placeID फ़ील्ड होता है. इसमें जगह की जानकारी, जगह के आईडी के तौर पर होती है. साथ ही, इसमें type फ़ील्ड होता है, जो जगह के टाइप के बारे में बताता है. जैसे, street_address, premise या airport.

geocodingResults कलेक्शन में तीन फ़ील्ड होते हैं:

  • origin: अगर इसे पते की स्ट्रिंग या Plus Code के तौर पर बताया गया है, तो यात्रा शुरू होने की जगह का आईडी. ऐसा न होने पर, इस फ़ील्ड को जवाब से हटा दिया जाता है.

  • destination: अगर इसे पते की स्ट्रिंग या Plus Code के तौर पर बताया गया है, तो मंज़िल की जगह का आईडी. ऐसा न होने पर, इस फ़ील्ड को जवाब से हटा दिया जाता है.

  • intermediates: एक कलेक्शन, जिसमें पते की स्ट्रिंग या Plus Code के तौर पर बताए गए किसी भी इंटरमीडिएट वेपॉइंट का जगह का आईडी शामिल होता है. अगर आपने जगह के आईडी या अक्षांश और देशांतर के निर्देशांकों का इस्तेमाल करके, बीच में पड़ने वाले किसी वेपॉइंट की जानकारी दी है, तो उसे जवाब से हटा दिया जाता है. जवाब में intermediateWaypointRequestIndex प्रॉपर्टी का इस्तेमाल करके यह तय करें कि अनुरोध में मौजूद कौनसे इंटरमीडिएट वेपॉइंट, जवाब में मौजूद जगह के आईडी से मेल खाते हैं.

"geocodingResults": {
    "origin": {
        "geocoderStatus": {},
        "type": [
             enum (Type)
        ],
        "placeId": string
    },
    "destination": {
        "geocoderStatus": {},
        "type": [
            enum (Type)
        ],
        "placeId": string
    },
    "intermediates": [
        {
            "geocoderStatus": {},
            "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        },
        {
           "geocoderStatus": {},
           "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        }
    ]
}

स्थानीय भाषा के हिसाब से रिस्पॉन्स वैल्यू को समझना

स्थानीय भाषा में जवाब की वैल्यू, एक अतिरिक्त जवाब फ़ील्ड है. इसमें, लौटाए गए पैरामीटर वैल्यू के लिए स्थानीय भाषा में टेक्स्ट दिया जाता है. यात्रा की अवधि, दूरी, और यूनिट सिस्टम (मेट्रिक या इंपीरियल) के लिए, स्थानीय भाषा में टेक्स्ट उपलब्ध कराया जाता है. फ़ील्ड मास्क का इस्तेमाल करके, स्थानीय भाषा में वैल्यू का अनुरोध किया जा सकता है. साथ ही, भाषा और यूनिट सिस्टम की जानकारी दी जा सकती है या एपीआई से मिली वैल्यू का इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, LocalizedValues देखें.

उदाहरण के लिए, अगर आपने जर्मन (de) और इंपीरियल यूनिट के लिए भाषा कोड तय किया है, तो आपको distanceMeters के लिए 49889.7 वैल्यू मिलेगी. हालांकि, आपको जर्मन और इंपीरियल यूनिट में दूरी की माप देने वाला स्थानीय टेक्स्ट भी मिलेगा, जैसे कि "31 Meile."

यहां एक उदाहरण दिया गया है, जिससे पता चलता है कि स्थानीय वैल्यू के लिए आपको क्या दिखेगा:

{ "localized_values":
  {
    "distance": { "text": "31,0 Meile/n" },
    "duration": { "text": 38 Minuten}.
    "static_duration": { "text": 36 Minuten}.
  }
}

अगर भाषा या यूनिट सिस्टम की जानकारी नहीं दी जाती है, तो एपीआई भाषा और यूनिट का अनुमान इस तरह लगाता है:

  • ComputeRoutes तरीका, यात्रा शुरू करने की जगह के वेपॉइंट से जगह और दूरी की इकाइयों का पता लगाता है. इसलिए, अमेरिका में रूटिंग के अनुरोध के लिए, एपीआई en-US भाषा और IMPERIAL यूनिट का अनुमान लगाता है.
  • ComputeRouteMatrix मेथड, डिफ़ॉल्ट रूप से 'en-US' भाषा और मेट्रिक यूनिट पर सेट होता है.