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

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

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

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

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

आम तौर पर, Maps का स्टैटिक एपीआई अनुरोध नीचे दिया गया फ़ॉर्म होता है:

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

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

एसएसएल/TLS ऐक्सेस

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

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

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

खास वर्ण

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

यूआरएल के मान्य वर्णों की खास जानकारी
सेट करेंवर्णयूआरएल का इस्तेमाल
अक्षर और अंक दोनों शामिल हो सकते हैं ए b c d x x x CANNOT TRANSLATE टेक्स्ट स्ट्रिंग, स्कीम का इस्तेमाल (http), पोर्ट (8080) वगैरह.
गैर-आरक्षित - _ . ~ टेक्स्ट स्ट्रिंग
बुकिंग की गई ! * ' ( ) ; : @ & = + $ , / ? % # [ ] कंट्रोल वर्ण और/या टेक्स्ट स्ट्रिंग

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

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

यूआरएल के लिए कोड में बदलने के लिए सभी वर्णों को 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 की सभी वेब सेवाओं और स्टैटिक वेब एपीआई के लिए, यूआरएल में 16384 से ज़्यादा वर्ण नहीं हो सकते. ज़्यादातर सेवाओं के लिए, इस वर्ण सीमा पर शायद ही कभी संपर्क किया जाए. हालांकि, ध्यान रखें कि कुछ सेवाओं में कई पैरामीटर होते हैं, जिनकी वजह से यूआरएल लंबे हो सकते हैं.