समस्या का हल

एपीआई पासकोड और बिलिंग से जुड़ी गड़बड़ियां

कुछ मामलों में, आपको काला किया गया मैप या 'नेगेटिव' स्ट्रीट व्यू इमेज दिख सकती है. साथ ही, उस पर "सिर्फ़ डेवलपमेंट के लिए" टेक्स्ट वाला वॉटरमार्क दिख सकता है. आम तौर पर, इस तरह की गड़बड़ी से पता चलता है कि एपीआई पासकोड या बिलिंग में कोई समस्या है. Google Maps Platform के प्रॉडक्ट इस्तेमाल करने के लिए, आपके खाते पर बिलिंग की सुविधा चालू होनी चाहिए. साथ ही, सभी अनुरोधों में मान्य एपीआई पासकोड शामिल होना चाहिए. इस समस्या को हल करने के लिए, यहां दिया गया तरीका अपनाएं:

एपीआई पासकोड को यूआरएल में key पैरामीटर के तौर पर पास किया जाता है. इसका इस्तेमाल, Maps JavaScript API को लोड करने के लिए किया जाता है. एपीआई पासकोड का इस्तेमाल किया जा रहा है या नहीं, यह पता करने के लिए यहां कुछ विकल्प दिए गए हैं:

  • Google Maps Platform API Checker Chrome एक्सटेंशन का इस्तेमाल करें. इससे यह पता लगाया जा सकता है कि आपकी वेबसाइट, Google के लाइसेंस वाले Maps API को सही तरीके से लागू कर रही है या नहीं.
  • अगर Maps JavaScript API को लोड करने के लिए किसी लाइब्रेरी या प्लग इन का इस्तेमाल किया जा रहा है, तो उस लाइब्रेरी की सेटिंग देखें और एपीआई पासकोड का विकल्प ढूंढें.
  • अपने ब्राउज़र में गड़बड़ियां देखें. अगर आपको नीचे दिए गए मैसेज दिखते हैं, तो इसका मतलब है कि एपीआई पासकोड का इस्तेमाल सही तरीके से नहीं किया जा रहा है:
    • Google Maps JavaScript API से जुड़ी चेतावनी: NoApiKeys
    • Google Maps JavaScript API से जुड़ी गड़बड़ी: MissingKeyMapError

वेब डेवलपर के लिए:

  • अगर आपके पास अपने ऐप्लिकेशन के सोर्स कोड का ऐक्सेस है, तो Maps JavaScript API को लोड करने के लिए इस्तेमाल किए जाने वाले <script> टैग को ढूंढें. Maps JavaScript API को लोड करते समय, नीचे दिए गए कोड में YOUR_API_KEY को अपने एपीआई पासकोड से बदलें.
      <script async defer
        src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">
      </script>
  • ब्राउज़र में, अपनी वेबसाइट से जनरेट होने वाले नेटवर्क ट्रैफ़िक की जांच करें. Chrome में, इसे देखने के लिए DevTools नेटवर्क टैब का इस्तेमाल करें. यहां आपको अपनी वेबसाइट से किए गए नेटवर्क अनुरोध दिखेंगे. Maps JavaScript API का इस्तेमाल करके किए गए अनुरोध, maps/api/js पाथ में होंगे. यहां यह पुष्टि की जा सकती है कि अनुरोधों में key पैरामीटर का इस्तेमाल किया जा रहा है या नहीं. नेटवर्क टैब देखते समय, maps/api/js के हिसाब से अपने नेटवर्क ट्रैफ़िक को फ़िल्टर करने से मदद मिल सकती है.

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

बढ़िया! अब यह देखें कि आपके प्रोजेक्ट से कोई बिलिंग खाता जुड़ा है या नहीं.

Google Cloud console में बिलिंग पेज पर जाएं और वह प्रोजेक्ट चुनें जिसके तहत आपकी एपीआई पासकोड बनाई गई थी. यह पुष्टि करने के लिए कि कुंजी, प्रोजेक्ट से जुड़ी है:

  1. क्रेडेंशियल सेक्शन पर जाएं. इसे ऐक्सेस करने के लिए, बाईं ओर मौजूद बार में, Google Maps Platform > क्रेडेंशियल पर जाएं.
  2. देखें कि आपकी वेबसाइट पर फ़िलहाल इस्तेमाल की जा रही एपीआई कुंजी, सूची में शामिल है या नहीं. अगर ऐसा नहीं है, तो किसी दूसरे प्रोजेक्ट पर स्विच करें और वहां क्रेडेंशियल देखें.
  3. अगर आपको अपनी एपीआई कुंजी का प्रोजेक्ट नहीं मिल रहा है, तो हो सकता है कि आपने इस प्रोजेक्ट का ऐक्सेस खो दिया हो. अपने संगठन के अन्य लोगों से मदद मांगें. अगर ओरिजनल प्रोजेक्ट का पता नहीं चलता है, तो आपको:
    1. नया प्रोजेक्ट बनाएं. ऐसा करने के लिए, प्रोजेक्ट की सूची से नया प्रोजेक्ट चुनें या रिसॉर्स मैनेजर पेज पर जाकर प्रोजेक्ट बनाएं चुनें.
    2. नई एपीआई कुंजी बनाएं. ऐसा करने के लिए, क्रेडेंशियल पेज पर जाएं. वहां जाकर, क्रेडेंशियल बनाएं पर क्लिक करें. इसके बाद, एपीआई कुंजी चुनें.

Cloud Console में अपना प्रोजेक्ट ढूंढने के बाद, बाईं ओर मौजूद मेन्यू में बिलिंग सेक्शन पर जाकर देखें कि कोई बिलिंग खाता अटैच है या नहीं.

Cloud Console में, बिलिंग की सुविधा चालू करें पेज पर जाएं और अपने प्रोजेक्ट में बिलिंग खाता जोड़ें. ज़्यादा जानकारी के लिए, Google Maps Platform का इस्तेमाल शुरू करना लेख पढ़ें.

बढ़िया! आइए, यह पक्का करें कि बिलिंग के लिए दिया गया तरीका मान्य है.

Cloud कंसोल में, पेमेंट का तरीका जोड़ा, हटाया या अपडेट किया जा सकता है.

अगर आपने अपने किसी भी एपीआई पर रोज़ की सीमा सेट की है, तो रोज़ की सीमा बढ़ाकर इस समस्या को हल किया जा सकता है. ऐसा आम तौर पर, अनचाहे ट्रैफ़िक को रोकने के लिए किया जाता है.

Cloud Console में, एपीआई और सेवाओं के डैशबोर्ड पर जाकर, हर दिन के लिए तय की गई सीमाएं देखी जा सकती हैं. इसके बाद:

  1. अगर कहा जाए, तो कोई प्रोजेक्ट चुनें.
  2. सूची से कोई एपीआई चुनें. इसके बाद, कोटा टैब पर क्लिक करें.

आईपी पतों पर पाबंदी वाली एपीआई कुंजियों का इस्तेमाल, सिर्फ़ उन वेब सेवाओं के साथ किया जा सकता है जिन्हें सर्वर साइड से इस्तेमाल करने के लिए बनाया गया है. जैसे, Geocoding API और अन्य वेब सेवा एपीआई. इनमें से ज़्यादातर वेब सेवाओं के बराबर की सेवाएं, Maps JavaScript API में भी उपलब्ध हैं. उदाहरण के लिए, जियोकोडिंग सेवा देखें. Maps JavaScript API क्लाइंट साइड सेवाओं का इस्तेमाल करने के लिए, आपको एक अलग एपीआई पासकोड बनाना होगा. इसे एचटीटीपी रेफ़रर की पाबंदी से सुरक्षित किया जा सकता है. इसके लिए, एपीआई पासकोड पाना, जोड़ना, और उस पर पाबंदी लगाना लेख पढ़ें.

अगर आपका कोड काम नहीं कर रहा है, तो:

Maps कोड को अप और रन करने में आपकी मदद करने के लिए, ब्रैंडन केनी और मनो मार्क्स ने इस वीडियो में कुछ सामान्य गड़बड़ियों के बारे में बताया है. साथ ही, उन्हें ठीक करने का तरीका भी बताया है.

  • टाइपिंग की गलतियां देखें. याद रखें कि JavaScript एक केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) भाषा है.
  • बुनियादी बातें देखें - मैप बनाने के दौरान, कुछ सामान्य समस्याएं आती हैं. जैसे:
    • पुष्टि करें कि आपने मैप के विकल्पों में zoom और center प्रॉपर्टी की जानकारी दी हो.
    • पक्का करें कि आपने कोई ऐसा div एलिमेंट तय किया हो जिसमें स्क्रीन पर मैप दिखेगा.
    • पक्का करें कि मैप के div एलिमेंट की ऊंचाई हो. डिफ़ॉल्ट रूप से, div एलिमेंट की ऊंचाई 0 होती है. इसलिए, ये एलिमेंट दिखते नहीं हैं.
    लागू करने के तरीके के रेफ़रंस के लिए, हमारे उदाहरण देखें.
  • समस्याओं की पहचान करने के लिए, JavaScript डीबगर का इस्तेमाल करें. जैसे, Chrome डेवलपर टूल में उपलब्ध डीबगर. सबसे पहले, JavaScript कंसोल में गड़बड़ियां देखें.
  • Stack Overflow पर सवाल पोस्ट करें. बेहतर सवाल पोस्ट करने के बारे में दिशा-निर्देश, सहायता पेज पर उपलब्ध हैं.