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

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

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

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

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

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

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

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

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

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

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

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

Powered by Google, ©YEAR Google

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

Powered by Google, ©2023 Google

रास्तों, पैरों, और कदमों के बारे में जानकारी

रूट एपीआई से मिले रिस्पॉन्स को देखने से पहले, आपको रूट बनाने वाले कॉम्पोनेंट की समझ होनी चाहिए:

रास्ता, पैर, और कदम.

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

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

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

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

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

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

जवाब में क्या जानकारी मौजूद है

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

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

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

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

जवाब का यह फ़ॉर्म होगा:

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

रूट अरे को समझें

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

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

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

वैल्यू कंपनी का ब्यौरा
DEFAULT_ROUTE डिफ़ॉल्ट रास्ते की पहचान करता है.
FUEL_EFFICIENT ईको-फ़्रेंडली रास्ते की पहचान करता है.
DEFAULT_ROUTE_ALTERNATE वैकल्पिक रास्ते को दिखाता है.

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"
      ],
     …
    }
  ]
}

लेग अरे को समझें

रिस्पॉन्स में मौजूद हर 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 समानार्थी शब्द हैं.

जियोकोडिंग परिणाम अरे को समझें

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

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

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

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

  • intermediates: एक कलेक्शन, जिसमें पता स्ट्रिंग या Plus कोड के तौर पर दर्ज किसी भी इंटरमीडिएट वेपॉइंट का जगह आईडी शामिल होता है. अगर जगह का आईडी या अक्षांश और देशांतर निर्देशांक का इस्तेमाल करके इंटरमीडिएट वेपॉइंट तय किया जाता है, तो उसे जवाब में शामिल नहीं किया जाता. रिस्पॉन्स में 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' भाषा और METRIC इकाइयों पर सेट होता है.