Maps स्टैटिक एपीआई का इस्तेमाल करने के सबसे सही तरीके

Google Maps Platform के स्टैटिक वेब एपीआई, Google की सेवाओं के लिए एचटीटीपी इंटरफ़ेस का एक कलेक्शन हैं. ये ऐसी इमेज जनरेट करते हैं जिन्हें सीधे अपने वेब पेज पर एम्बेड किया जा सकता है.

इस गाइड में, इमेज के अनुरोधों को सेट अप करने और सेवा के जवाबों को प्रोसेस करने के लिए, कुछ सामान्य तरीकों के बारे में बताया गया है. Maps Static API के पूरे दस्तावेज़ के लिए, डेवलपर गाइड देखें.

स्टैटिक वेब एपीआई क्या है?

Google Maps Platform के स्टैटिक वेब एपीआई की मदद से, अपने वेब पेज में Google Maps की इमेज को एम्बेड किया जा सकता है. इसके लिए, आपको JavaScript या किसी डाइनैमिक पेज को लोड करने की ज़रूरत नहीं होती. स्टैटिक वेब एपीआई, यूआरएल पैरामीटर के आधार पर इमेज बनाते हैं. ये पैरामीटर, स्टैंडर्ड एचटीटीपीएस अनुरोध का इस्तेमाल करके भेजे जाते हैं.

Maps Static API का सामान्य अनुरोध, आम तौर पर इस फ़ॉर्मैट में होता है:

  https://www.googleapis.com/staticmap/z/x/y?parameters

ध्यान दें: Maps Static API के सभी ऐप्लिकेशन के लिए पुष्टि करना ज़रूरी है. पुष्टि करने के क्रेडेंशियल के बारे में ज़्यादा जानें.

एसएसएल/टीएलएस ऐक्सेस

Google Maps Platform के उन सभी अनुरोधों के लिए एचटीटीपीएस ज़रूरी है जिनमें एपीआई पासकोड का इस्तेमाल किया जाता है या उपयोगकर्ता का डेटा शामिल होता है. एचटीटीपी के ज़रिए किए गए ऐसे अनुरोधों को अस्वीकार किया जा सकता है जिनमें संवेदनशील डेटा शामिल हो.

मान्य यूआरएल बनाना

आपको लग सकता है कि "मान्य" यूआरएल अपने-आप साबित हो जाता है, लेकिन ऐसा नहीं है. उदाहरण के लिए, ब्राउज़र के पता बार में डाले गए यूआरएल में खास वर्ण (जैसे, "上海+中國") हो सकते हैं. ब्राउज़र को ट्रांसमिशन से पहले, उन वर्णों को इंटरनल तौर पर किसी दूसरी एन्कोडिंग में बदलना पड़ता है. इसी तरह, UTF-8 इनपुट जनरेट करने या स्वीकार करने वाला कोई भी कोड, UTF-8 वर्णों वाले यूआरएल को "मान्य" के तौर पर ले सकता है. हालांकि, वेब सर्वर पर भेजने से पहले, उन वर्णों का अनुवाद करना भी ज़रूरी होगा. इस प्रोसेस को यूआरएल को कोड में बदलना या पर्सेंट कोड में बदलना कहा जाता है.

विशेष वर्ण

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

यूआरएल में इस्तेमाल किए जा सकने वाले वर्ण
सेट करेंवर्णयूआरएल का इस्तेमाल
अक्षर और अंक a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 टेक्स्ट स्ट्रिंग, स्कीम का इस्तेमाल (http), पोर्ट (8080) वगैरह.
गैर-आरक्षित - _ . ~ टेक्स्ट स्ट्रिंग
बुकिंग की गई ! * ' ( ) ; : @ & = + $ , / ? % # [ ] कंट्रोल वर्ण और/या टेक्स्ट स्ट्रिंग

मान्य यूआरएल बनाते समय, आपको यह पक्का करना होगा कि उसमें सिर्फ़ वे वर्ण हों जो टेबल में दिखाए गए हैं. वर्णों के इस सेट का इस्तेमाल करने के लिए, यूआरएल को आम तौर पर, दो समस्याओं का सामना करना पड़ता है. पहला, कुछ वर्णों को छोड़ना और दूसरा, कुछ वर्णों को बदलना:

  • आपको जिन वर्णों को हैंडल करना है वे ऊपर दिए गए सेट में शामिल नहीं हैं. उदाहरण के लिए, 上海+中國 जैसी विदेशी भाषाओं के वर्णों को ऊपर दिए गए वर्णों का इस्तेमाल करके एन्कोड करना ज़रूरी है. आम तौर पर, यूआरएल में स्पेस का इस्तेमाल नहीं किया जा सकता. हालांकि, अक्सर स्पेस को प्लस '+' वर्ण का इस्तेमाल करके दिखाया जाता है.
  • ऊपर दिए गए सेट में वर्ण, रिज़र्व किए गए वर्णों के तौर पर मौजूद होते हैं, लेकिन इनका इस्तेमाल लिटरल तौर पर किया जाना चाहिए. उदाहरण के लिए, यूआरएल में ? का इस्तेमाल, क्वेरी स्ट्रिंग की शुरुआत को दिखाने के लिए किया जाता है. अगर आपको स्ट्रिंग "? और Mysterions" का इस्तेमाल करना है, तो आपको '?' वर्ण को कोड में बदलना होगा.

यूआरएल में बदले जाने वाले सभी वर्णों को, '%' कैरेक्टर और उनके UTF-8 कैरेक्टर से जुड़ी दो वर्णों वाली हेक्स वैल्यू का इस्तेमाल करके एन्कोड किया जाता है. उदाहरण के लिए, UTF-8 में 上海+中國 को यूआरएल-कोड में बदलकर %E4%B8%8A%E6%B5%B7%2B%E4%B8%AD%E5%9C%8B किया जाएगा. ? and the Mysterians स्ट्रिंग को कोड में बदलकर, %3F+and+the+Mysterians या %3F%20and%20the%20Mysterians किया जाएगा.

ऐसे सामान्य वर्ण जिन्हें एन्कोड करने की ज़रूरत होती है

कुछ सामान्य वर्ण ऐसे होते हैं जिन्हें कोड में बदलना ज़रूरी होता है. जैसे:

असुरक्षित वर्ण एन्कोड की गई वैल्यू
स्पेस %20
" %22
< %3C
> %3E
# %23
% %25
| %7C

उपयोगकर्ता के इनपुट से मिले यूआरएल को बदलना कभी-कभी मुश्किल हो सकता है. उदाहरण के लिए, कोई उपयोगकर्ता "5th&Main St." के तौर पर पता डाल सकता है. आम तौर पर, आपको अपने यूआरएल को उसके हिस्सों से बनाना चाहिए. साथ ही, उपयोगकर्ता के किसी भी इनपुट को लिटरल वर्ण के तौर पर इस्तेमाल करना चाहिए.

इसके अलावा, Google Maps Platform की सभी वेब सेवाओं और स्टैटिक वेब एपीआई के लिए, यूआरएल में 16,384 वर्ण ही इस्तेमाल किए जा सकते हैं. ज़्यादातर सेवाओं के लिए, वर्ण की यह सीमा शायद ही पूरी हो. हालांकि, ध्यान दें कि कुछ सेवाओं में कई पैरामीटर होते हैं, जिनकी वजह से यूआरएल लंबे हो सकते हैं.