Map Tiles एपीआई के साथ सेशन टोकन का इस्तेमाल करें

सेशन टोकन, डेटा का एक हिस्सा (UUID) होता है. इसका इस्तेमाल REST कॉल में, किसी सेशन की पहचान करने के लिए किया जाता है. यह एक-दूसरे से जुड़े मैसेज एक्सचेंज की सीरीज़ होती है. आपको 2D टाइल और Street View की तस्वीरों के संग्रह के लिए, सभी अनुरोधों में सेशन टोकन शामिल करना होगा. इसे session पैरामीटर की वैल्यू के तौर पर शामिल किया जा सकता है. यह वैल्यू, अनुरोध के सभी यूआरएल से जुड़ी होती है.

Map Tiles API में, सेशन टोकन, डिसप्ले विकल्पों का तय सेट दिखाता है. इसका मतलब है कि आपको टाइल के हर अनुरोध के साथ, डिसप्ले के अलग-अलग विकल्पों को पास करने की ज़रूरत नहीं है. एक ही सेशन टोकन का इस्तेमाल एक से ज़्यादा क्लाइंट के लिए किया जा सकता है. फ़िलहाल, कोई सेशन टोकन जारी होने के दो हफ़्ते बाद तक मान्य रहता है. हालांकि, इस समय में बदलाव हो सकता है. रिस्पॉन्स मैसेज में expiry फ़ील्ड को देखकर, सेशन टोकन की समयसीमा खत्म होने का समय कभी भी देखा जा सकता है.

सेशन टोकन के लिए अनुरोध

सेशन टोकन का अनुरोध करने के लिए, createSession एंडपॉइंट पर एचटीटीपीएस पोस्ट अनुरोध भेजें, जैसा कि इस उदाहरण में दिखाया गया है. आपको Content-Type: application/json हेडर के साथ अनुरोध भेजना होगा.

curl -X POST -d '{
  "mapType": "streetview",
  "language": "en-US",
  "region": "US"
}' \
-H 'Content-Type: application/json' \
"https://tile.googleapis.com/v1/createSession?key=YOUR_API_KEY"

ज़रूरी फ़ील्ड

mapType

बेस मैप का टाइप. यह वैल्यू, इनमें से कोई एक हो सकती है:

roadmap
Google Maps की स्टैंडर्ड टाइल, पेंट की गई मैप टाइल होती हैं.
satellite
सैटलाइट से ली गई तस्वीरें.
terrain
इलाके की तस्वीरें. terrain को मैप टाइप के तौर पर चुनते समय, आपको layerRoadmap लेयर टाइप भी शामिल करना होगा. इस बारे में वैकल्पिक फ़ील्ड सेक्शन में बताया गया है.
streetview
Street View के पैनोरामा. ज़्यादा जानकारी के लिए, Street View टाइल देखें.
language

आईईटीएफ़ भाषा का टैग यह टाइल पर जानकारी दिखाने के लिए इस्तेमाल की जाने वाली भाषा के बारे में बताता है. उदाहरण के लिए, en-US वही अंग्रेज़ी भाषा बताता है जो अमेरिका में बोली जाती है.

region

कॉमन लोकल डेटा रिपॉज़िटरी क्षेत्र का आइडेंटिफ़ायर (दो बड़े अक्षरों वाला), जो उपयोगकर्ता की जगह की जानकारी देता है. उदाहरण के लिए, US.

वैकल्पिक फ़ील्ड

imageFormat
यह तय करता है कि फ़ाइल किस फ़ॉर्मैट में दिखेगी. मान्य मान या तो jpeg या png हैं. JPEG फ़ाइलों में पारदर्शिता की सुविधा काम नहीं करती है. इसलिए, ओवरले टाइल के लिए इन फ़ाइलों का सुझाव नहीं दिया जाता है. अगर imageFormat की जानकारी नहीं दी जाती है, तो टाइल के लिए सबसे अच्छा फ़ॉर्मैट अपने-आप चुन लिया जाता है.
scale

डिफ़ॉल्ट टाइल की टाइल के साइज़ और कवरेज एरिया को बनाए रखते हुए, मैप के एलिमेंट (जैसे कि सड़क के लेबल) के साइज़ को स्केल-अप करता है. स्केल बढ़ाने से मैप पर लेबल की संख्या भी कम हो जाती है, जिससे ग़ैर-ज़रूरी चीज़ें कम हो जाती हैं. ये वैल्यू, scale की मान्य वैल्यू हैं:

  • scaleFactor1x: डिफ़ॉल्ट.
  • scaleFactor2x: यह लेबल के साइज़ को दोगुना कर देता है. साथ ही, छोटे-छोटे फ़ीचर लेबल हटा देता है.
  • scaleFactor4x: लेबल के साइज़ को दोगुना कर दिया जाता है और छोटे-छोटे फ़ीचर लेबल हटा दिए जाते हैं.

नीचे दिए गए उदाहरणों में, मैप के एलिमेंट को स्केल करने का असर दिखाया गया है.

स्केल फ़ैक्टर 1x स्केल फ़ैक्टर 2x
स्केल फ़ैक्टर 1x दिखाने वाला मैप स्केल फ़ैक्टर 2x दिखाने वाला मैप
highDpi
यह तय करता है कि हाई रिज़ॉल्यूशन वाली टाइल दिखानी हैं या नहीं. अगर स्केल-फ़ैक्टर बढ़ता है, तो टाइल का साइज़ बढ़ाने के लिए highDpi का इस्तेमाल किया जाता है. आम तौर पर, स्केल फ़ैक्टर को बढ़ाने पर, टाइल पर नतीजे के तौर पर मौजूद टाइल, उसके साइज़ के बराबर हो जाती है. इससे क्वालिटी खराब हो जाती है. highDpi के साथ, वीडियो का साइज़ भी बढ़ जाता है, जिससे क्वालिटी बनी रहती है. डीपीआई का मतलब है, डॉट प्रति इंच. हाई डीपीआई का मतलब है कि टाइल रेंडर होने में सामान्य से ज़्यादा डॉट प्रति इंच इस्तेमाल होती है. अगर true है, तो हर x और y डाइमेंशन में पिक्सल की संख्या को स्केल फ़ैक्टर (यानी , 2x या 4x) से गुणा किया जाता है. टाइल के कवरेज एरिया में कोई बदलाव नहीं किया गया है. यह पैरामीटर 2x या 4x के सिर्फ़ scale वैल्यू के साथ काम करता है. इससे 1x स्केल टाइल पर कोई असर नहीं पड़ता.
स्केल फ़ैक्टर 1x स्केल फ़ैक्टर 2x हाई डीपीआई
मैप नियमित रिज़ॉल्यूशन में दिखाया जा रहा है मैप 2x हाई डीपीआई रिज़ॉल्यूशन पर दिखाया गया है
layerTypes

वैल्यू का कलेक्शन, जो मैप में जोड़े गए लेयर टाइप के बारे में बताता है. मान्य वैल्यू ये हैं:

layerRoadmap
अगर आप terrain को मैप टाइप के तौर पर बताते हैं, तो यह ज़रूरी है. इसे satellite मैप टाइप पर भी ओवरले किया जा सकता है. रोडमैप टाइल पर कोई असर नहीं पड़ता.
layerStreetview
मैप पर नीली आउटलाइन का इस्तेमाल करके, Street View की सुविधा वाली सड़कों और जगहों की जानकारी दिखाता है.
layerTraffic
ट्रैफ़िक की मौजूदा स्थितियों की जानकारी देता है.
styles

JSON स्टाइल के ऑब्जेक्ट का कलेक्शन, जो मैप की सुविधाओं के लुक और उनकी जानकारी के लेवल के बारे में बताता है. जैसे, सड़कें, पार्क, और आस-पास बनी जगहें. स्टाइल का इस्तेमाल, Google के स्टैंडर्ड मैप को पसंद के मुताबिक बनाने के लिए किया जाता है. styles पैरामीटर सिर्फ़ तब मान्य होता है, जब मैप का टाइप roadmap हो. स्टाइल के पूरे सिंटैक्स के लिए, स्टाइल का रेफ़रंस देखें.

overlay

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

उदाहरण के लिए, layerRoadmap लेयर के साथ satellite मैप टाइप का अनुरोध करने और overlay को false पर सेट करने का नतीजा यह होता है कि नतीजे, Maps JavaScript API में इस्तेमाल किए गए hybrid मैप टाइप के बराबर टाइल के तौर पर दिखेंगे (बाईं इमेज). जिन मैप और लेयर टाइप को overlay true पर सेट किया जाता है वे पारदर्शी टाइल बनाते हैं. इनमें मैप ओवरले होता है. इसे सैटलाइट से ली गई तस्वीरों (दाईं इमेज) के ऊपर लगाने के लिए, सही तरीके से स्टाइल किया जाता है.

overlay: गलत overlay: सही
ओवरले गलत पर सेट है ओवरले 'सही' पर सेट है

यहां दिया गया JSON, अनुरोध के सामान्य मुख्य हिस्से का उदाहरण है. इसमें ज़रूरी और वैकल्पिक, दोनों फ़ील्ड शामिल हैं.

{
  "mapType": "satellite",
  "language": "en-US",
  "region": "us",
  "layerTypes": [ "layerRoadmap", "layerStreetview" ],
  "overlay":  true,
  "scale": "scaleFactor1x",
  "styles": [
    {
      "stylers": [
        { "hue": "#00ffe6" },
        { "saturation": -20 }
      ]
    },{
      "featureType": "road",
      "elementType": "geometry",
      "stylers": [
        { "lightness": 100 },
        { "visibility": "simplified" }
      ]
    }
  ]
}

इस उदाहरण में एक ऐसा ओवरले दिया गया है जो सैटलाइट से ली गई तस्वीरों के साथ मिलाने के लिए सही है. उदाहरण में रोडमैप और स्ट्रीट व्यू ओवरले, दोनों शामिल हैं. नतीजे के तौर पर बने मैप को अंग्रेज़ी भाषा में नाम और डेटा के साथ रेंडर किया जाता है, क्योंकि इसे अमेरिका में बोला जाता है.

apiOptions: वैल्यू का कलेक्शन, जिसमें लागू किए जाने वाले अतिरिक्त विकल्प बताए गए हैं. इन विकल्पों का इस्तेमाल किया जा सकता है:

  • MCYJ5E517XR2JC - मैप की नई स्टाइल के लिए ऑप्ट-इन करें. अगर ऑप्ट-इन करने की अवधि के दौरान यह वैल्यू नहीं बताई जाती, तो आपके अनुरोधों में मौजूदा स्टाइल ही दिखेगा.

सेशन टोकन रिस्पॉन्स

यह JSON, रिस्पॉन्स का मुख्य हिस्सा उदाहरण के तौर पर दिया गया है.

{
  "session": "IgAAAHGU9jnAU4KOAfwY3Bcd6eH_WxQsyocSBAdUnAr9pnvTTNXtF9c_27RBo94ytEXTDg",
  "expiry": "1361828036",
  "tileWidth": 256,
  "tileHeight": 256,
  "imageFormat": "png"
}

इस सूची में, रिस्पॉन्स के मुख्य हिस्से में मौजूद फ़ील्ड की परिभाषाएं दी गई हैं.

session
सेशन टोकन की वैल्यू, जिसे आपको Map Tiles API के अपने सभी अनुरोधों में शामिल करना होगा.
expiry
ऐसी स्ट्रिंग जिसमें टोकन की समयसीमा खत्म होने का समय (epoch के बाद से सेकंड में) शामिल होता है. सेशन टोकन, बनाए जाने के समय से दो हफ़्तों तक मान्य रहता है. हालांकि, इस नीति को बिना किसी सूचना के बदला जा सकता है.
tileWidth
पिक्सल में मापी गई टाइल की चौड़ाई.
tileHeight
पिक्सल में मापी गई टाइल की ऊंचाई.
imageFormat
इमेज फ़ॉर्मैट, जो png या jpeg हो सकता है.