Google मैप्स जावास्क्रिप्ट एपीआई रेफररनोटएल्जेड मैपएयर


122

हम अपने ग्राहकों में से एक के लिए एक भू-स्खलन ऐप विकसित करने की कोशिश कर रहे हैं, और हम चाहते हैं कि पहले इसे स्वयं के डोमेन में परीक्षण करें।

हमने Google मैप्स जावास्क्रिप्ट एपीआई के लिए हस्ताक्षर किए हैं, और हमारे पास एक वैध ब्राउज़र कुंजी है और हमारे डोमेन, www.grupocamaleon.com, को उस कुंजी का उपयोग करने के लिए अधिकृत किया गया है।

लेकिन हम त्रुटि के बिना चलाने के लिए सबसे आसान उदाहरण भी नहीं बना सकते हैं।

हमारे पास, हमारे डोमेन में और हमारी कुंजी के साथ, निम्नलिखित डेमो है:

(१) http://www.grupocamaleon.com/boceto/aerial-simple.html

लेकिन यह काम नहीं करता है, और फायरबग कंसोल कहते हैं:

"Google मैप्स एपीआई त्रुटि: गूगल मैप्स एपीआई त्रुटि: RefererNotAllowedMapError (Google दस्तावेज़ पर लिंक RefererNotAllowedMapError) आपकी साइट URL अधिकृत होने के लिए: (1)"

मेरे क्रेडेंशियल पेज को स्वीकार करने के लिए रेफरल जोड़ने की संभावना याद आ रही है, इसलिए रेफरल जोड़ने से जुड़े समाधान अभी संभव नहीं हैं।

मेरा क्रेडेंशियल पेज:

यहाँ छवि विवरण दर्ज करें

हमें वह त्रुटि क्यों मिलती है? हम इसे कैसे ठीक कर सकते हैं?


Google मैप्स API रेफ़रर की संभावित डुप्लिकेट अनुमति नहीं हैआपका कोड मेरे लिए (मेरी कुंजी के साथ) काम करता है , इसलिए आपकी कुंजी, अनुमत रेफ़रर्स या इसके साथ उपयोग करने में सक्षम सेवाओं में कुछ गड़बड़ है।
जियोकोडिज़िप

लेकिन मुझे अपने क्रेडेंशियल पेज में ऐसी संभावना नहीं है, जैसा कि आप यहां मेरे जवाब में देख सकते हैं। कोई संकेत?
ग्रुपो कैमालेयन क्रिएटिवोस

खैर, मैं एक नौसिखिया हूँ और मुझे नहीं पता कि इस साइट को अभी तक कैसे इस्तेमाल किया जाए। असुविधा के लिए खेद है। मैंने अपने प्रश्न को संपादित किया है, अपने क्रेडेंशियल पेज पर जानकारी जोड़ रहा हूं। कुछ समाधानों में रेफरर्स को शामिल करने का हवाला दिया गया है, जो मैं फिलहाल नहीं कर सकता।
ग्रुपो कैमालेयन क्रिएटिवोस

यदि आप कुंजी के लिए रेफरल नहीं बदल सकते हैं, तो इसे हटा दें या इसे अपने नियंत्रण वाले से बदल दें। एक कुंजी की आवश्यकता नहीं है, लेकिन इसमें एक को शामिल करने के लाभ हैं।
जियोकॉडज़िप

1
मैंने कोई एपीपी या एपीआई प्रतिबंधों के साथ नई कुंजी बनाई, यह 10 मिनट के लिए समाप्त हो गया, फिर काम करना शुरू कर दिया। आगे मैंने केवल स्थान API जोड़ने का प्रयास किया, लेकिन इसे वेब से कॉल किया जा रहा है और कहता है: Google Maps JavaScript API error: RefererNotAllowedMapErrorप्रतीक्षा के बाद भी। फिर मैंने कोशिश की Maps JavaScript APIऔर यह कहता रहा RefererNotAllowedMapError, पेज को ताज़ा करने की कोशिश की और अंत में 2 मिनट और 40 सेकंड के बाद काम करना शुरू कर दिया। तो नरक बाहर देखो। लेकिन बिना कुछ भी मेरे लिए काम करता है, और ऐसा Maps JavaScript APIही करता है । आपको बस बहुत इंतजार करना होगा।
साइको brm

जवाबों:


167

मुझे पता है कि यह एक पुराना प्रश्न है, जिसके पास पहले से ही कई उत्तर हैं, लेकिन मेरे पास यही समस्या थी और मेरे लिए यह मुद्दा था कि मैंने कंसोल.डूवलर्स.google.com पर दिए गए उदाहरण का अनुसरण किया और प्रारूप में अपने डोमेन में प्रवेश किया *.domain.tld/*। यह बिल्कुल काम नहीं किया, और मैंने इसमें सभी प्रकार के बदलाव जोड़ने की कोशिश की domain.tld, जैसे domain.tld/*, *.domain.tldआदि।

मेरे लिए इसे हल करना वास्तविक प्रोटोकॉल को भी जोड़ रहा था ; http://domain.tld/*अपनी साइट पर काम करने के लिए मुझे केवल एक ही चाहिए। मुझे लगता है कि मुझे https://domain.tld/*HTTPS पर स्विच करने के लिए जोड़ने की आवश्यकता होगी ।

अपडेट: Google ने आखिरकार प्लेसहोल्डर को httpअब शामिल करने के लिए अपडेट कर दिया है :

Google Maps API referrer input field


1
मैं पुष्टि करता हूं: एकमात्र संयोजन जिसने मुझे एपीआई के उपयोग की अनुमति दी थीhttp://www.---.com/*
मार्को पानिची

6
यह उत्तर केवल एक ही है जिसने मेरे कोड को काम किया। मैं पुष्टि कर सकता हूं कि Google द्वारा प्रदान किया गया उदाहरण काम नहीं करता है।
18

1
हमें गलत जानकारी देने के लिए, @Google, धन्यवाद। http://----.com/* सही प्रारूप है।
माइकल येगर सेगमेंट

2
यदि आपके पास कई उप डोमेन हैं, तो आप सभी ठिकानों को कवर करने के लिए http: //*.example.com और https: //*.example.com कर सकते हैं
tim.baker

1
हो सकता है कि Google ने उस सुविधा को अपडेट किया हो - मेरे लिए यह प्रोटोकॉल के बिना काम करता है। मैं example.com/*सेटिंग्स क्षेत्र में है, और यह से काम करता हैhttps://example.com/map
एंडी

21

Google पर आइए, आप लोग API क्रेडेंशियल पेज को चालू करते हैं। (मुझे पता है क्योंकि मेरे दो बेटे वहां काम कर रहे हैं।)

"रेफ़रर्स" की सूची इससे कहीं अधिक सुविधाजनक है जितना कि यह देता है। (बेशक, इसे और अधिक क्षमा करना चाहिए ।) यहां कुछ नियम दिए गए हैं जिनकी खोज में मुझे घंटों लग गए:

  • सूची में क्रम महत्वपूर्ण है। सूची में अपने URL को ऊपर ले जाने से यह काम कर सकता है।
  • "http: //" उपसर्ग आवश्यक है।
  • यहां तक ​​कि "लोकलहोस्ट" को भी इसकी आवश्यकता है: " http: //localhost/foo/bar.html "
  • वाइल्डकार्ड के रूप में एक अनुगामी * काम करने के लिए लगता है जैसे कि यह एक स्ट्रिंग तुलना है।
  • यहां तक ​​कि " http: //localhost/foo/bar.html " के साथ " के साथ, " http: //localhost/foo/bar.html? Arg = 1 " भी काम नहीं करेगा। (एक वाइल्डकार्ड मदद करेगा?)
  • दोनों ठेस देव के लिए, (कम से कम) दो पंक्तियाँ हैं: " http: //localhost/foo/bar.html " और " http://my.site.com/foo/bar.html "
  • एक पोर्ट संख्या (8085? 4000?) आवश्यक नहीं लगती है।

शायद अन्य नियम हैं, लेकिन यह एक थकाऊ अनुमान लगाने का खेल है।


1
संपादित करने से पहले उत्तर के बारे में, मैं धैर्य से बाहर चल रहा हूं। ऐसा लगता है कि वाइल्डकार्ड (*) केवल एक पते के अंत में काम करते हैं ( http://my.site.com/*) या एक उपडोमेन ( http://*.site.com) में। अन्य सभी मामलों में यह काम नहीं करता है
क्रिस्टियन Tra Decna

1
मैंने गलत तरीके से केवल स्थान एपीआई (संदर्भ प्रतिबंधों के ठीक बगल में टैब) की अनुमति देने के लिए प्रतिबंध लगाया था। यह एक ही RefererNotAllowedMapError त्रुटि के परिणामस्वरूप होता है।
मैट ग्रीर

जोड़ना www। मेरे डोमेन नाम के लिए यह मेरे लिए तय है। मुझे यकीन नहीं है कि अगर एक वाइल्डकार्ड (*) को डोमेन के अंत में जोड़ (https://www.my-site.com/*)दिया जाए , जैसे कि समस्या को भी ठीक कर दिया है।
मुग

मेरे आयनिक मोबाइल ऐप में आयनिक: // ऐप # / टैब के रूप में डोमेन है। मैं इसे प्रतिबंधों में कैसे शामिल करूंगा। मैंने कई संयोजनों की कोशिश की लेकिन व्यर्थ। Ex: ionic: // app # / tabs, httpionic: // app # / tabs, httpsionic: // app # / tabs, ionic: // *, आयनिक: // ऐप # / *, httpionic: // *। ......
AUK4SO

@ AUK4SO - पाउंड साइन ( #) का urls में एक विशेष अर्थ है। देख लो <a name=...>। या तुम्हारा मतलब था iconic://1234/foo?
रिक जेम्स

18

प्रलेखन के अनुसार, 'RefererNotAllowedMapError' का अर्थ है

Google मैप्स जावास्क्रिप्ट एपीआई लोड करने वाला वर्तमान URL अनुमत रेफरल की सूची में नहीं जोड़ा गया है। कृपया Google डेवलपर कंसोल पर अपनी API कुंजी की संदर्भ सेटिंग्स की जाँच करें।

मेरे पास अपने निजी / काम के उपयोग के लिए Google मैप्स एंबेडेड एपीआई है और इस तरह अब तक किसी भी HTTP रेफ़रर्स को निर्दिष्ट नहीं किया गया है। मैं कोई त्रुटि नहीं दर्ज करता हूं। आपकी सेटिंग Google को यह सोचना चाहिए कि आप जिस URL पर जा रहे हैं वह पंजीकृत या अनुमत नहीं है।

यहाँ छवि विवरण दर्ज करें


15

बस याद दिलाएं कि यदि आप इसे बदलते हैं, तो सेटिंग्स को प्रभावी होने में 5 मिनट तक का समय लग सकता है।


15

मैंने कई रेफरर वेरिएशन की कोशिश की और 5 मिनट इंतज़ार करने के साथ-साथ जब तक मुझे अहसास नहीं हुआ कि फॉर्म फ़ील्ड में Google पॉपुलेटेड है, त्रुटिपूर्ण है। उन्होंने दिखाया:

*.example.com/*

हालाँकि यह तभी काम करता है जब आपके पास subdomain.या www.आपके डोमेन नाम के सामने हो। निम्नलिखित ने तुरंत मेरे लिए काम किया (Google के उदाहरण से अग्रणी अवधि को छोड़ते हुए):

*example.com/*

8
बुरा विचार - कोई व्यक्ति hackexample.comआपके
Api

3
@HyderA - अधिक संभावना यह है कि कोई व्यक्ति अतिरिक्त मैप लोड प्राप्त करने के लिए एक गुच्छा मुक्त Google खातों को पंजीकृत करेगा।
उल्लू

@HyderA उन्हें अभी भी कुंजी की आवश्यकता होगी, इसलिए एक बड़ा मौका नहीं। लेकिन आप सही हैं, अभी भी एक संभावित जोखिम है।
इयॉन

मेरे आयनिक मोबाइल ऐप में आयनिक: // ऐप # / टैब के रूप में डोमेन है। मैं इसे प्रतिबंधों में कैसे शामिल करूंगा। मैंने कई संयोजनों की कोशिश की लेकिन व्यर्थ। Ex: ionic: // app # / tabs, httpionic: // app # / tabs, httpsionic: // app # / tabs, ionic: // *, आयनिक: // ऐप # / *, httpionic: // *। ......
AUK4SO

10

Google डॉक्स के अनुसार ऐसा इसलिए हुआ क्योंकि जिस urlपर आप Google मैप्स एपीआई का उपयोग कर रहे हैं, वह इसमें not registeredहैlist of allowed referrers

संपादित करें:

से गूगल डॉक्स

एक निर्दिष्ट डोमेन के सभी उप-डोमेन भी अधिकृत हैं।

यदि http://example.com अधिकृत है, तो http://www.example.com भी अधिकृत है। रिवर्स सच नहीं है: यदि http://www.example.com अधिकृत है, तो http://example.com आवश्यक रूप से अधिकृत नहीं है

इसलिए, कृपया http://testdomain.comडोमेन को कॉन्फ़िगर करें , फिर आपका http://www.testdomain.comकाम शुरू हो जाएगा।


मेरे मामले में यह डोमेन के लिए DNS गलत था। उदाहरण के लिए: www.testdomain.com ने बढ़िया testdomain.com पर काम किया, जिससे त्रुटि नहीं हुई
ताहिर खालिद

1
ऐसा लगता है कि उस का तर्क उलटा है? जब तक मुझे कुछ याद नहीं आ रहा है।
ट्वोबोब

10

जाँचें कि आपके पास सही APIS सक्षम है।

मैंने उपरोक्त सभी, तारांकन, डोमेन टार, फ़ॉरवर्ड स्लैश, बैकस्लैश और सब कुछ करने की कोशिश की, यहां तक ​​कि अंत में केवल एक आखिरी उम्मीद के रूप में एक यूआरएल में प्रवेश किया।

यह सब काम नहीं किया और आखिरकार मैंने महसूस किया कि Google को यह भी आवश्यक है कि अब आप यह निर्दिष्ट करें कि आप किस एपीआई का उपयोग करना चाहते हैं (स्क्रीनशॉट देखें)

यहाँ छवि विवरण दर्ज करें

मेरे पास वे सक्षम नहीं थे जिनकी मुझे आवश्यकता थी (मेरे लिए जो मैप्स जावास्क्रिप्ट एपीआई था)

एक बार जब मैंने इसे सक्षम किया, तो सभी ने ठीक काम किया:

http://www.example.com/ *

मुझे आशा है कि किसी की मदद करता है! :)


9

सबडोमेन भाग में वाइल्डकार्ड (तारांकन) की अनुमति नहीं है

  • गलत: * .example.com / *
  • सही: example.com/*

भूल जाएं कि Google प्लेसहोल्डर पर क्या कहता है, इसकी अनुमति नहीं है।


मैं निम्नलिखित को कैसे जोड़ सकता हूं: sc.maindomain.com/Survey/UpdateInspection/102
dE स्रोत

1
आप के रूप में सेट कर सकते हैंsc.maindomain.com/*
डैनियल Loureiro

8

मैंने पाया कि आपके कारण भी HTTP Referreresपर्याप्त मान्य हैं, API Restrictionsकारणों का गलत सेट Google Maps JavaScript API error: RefererNotAllowedMapError

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

  • आप कुंजी के लिए जावास्क्रिप्ट एपीआई का उपयोग कर रहे हैं।
  • जोड़े http://localhost/*कोApplication Restrictions / HTTP Referrences
  • के Maps Embed APIबजाय चुनेंMaps Javascript API
  • इसकी वजह से RefererNotAllowedMapError

हां, मेरे मामले में गर्भपात का मुद्दा था
एंड्री एफ।

लेकिन सुरक्षा का क्या? अगर मैं लोकलहोस्ट के लिए अनुमति देता हूं तो क्या कोई लोकलहोस्ट में मेरी कुंजी का उपयोग कर सकता है?
कौशल

5

कई वर्षों के दौरान बहुत सारे कथित समाधान हैं, और कुछ अब काम नहीं करते हैं और कुछ ने कभी नहीं किया है, इस प्रकार मेरे अप-टू-डेट जुलाई 2018 के अंत में काम कर रहे हैं।

सेट अप:

Google मैप्स जावास्क्रिप्ट एपीआई के साथ ठीक से काम करना है ...

  • API को कॉल करने वाले कई डोमेन: example.comऔरexample.net
  • मनमाने उपडोमेन: user22656.example.comआदि।
  • दोनों सुरक्षित और मानक HTTP प्रोटोकॉल: http://www.example.com/औरhttps://example.net/
  • अनिश्चितकालीन पथ संरचना (यानी विभिन्न URL पथों की एक बड़ी संख्या)

उपाय:

  • वास्तव में प्लेसहोल्डर से पैटर्न का उपयोग करना <https (or) http>://*.example.com/*:।
  • प्रोटोकॉल को छोड़ना नहीं, बल्कि प्रति डोमेन (एक प्रोटोकॉल) दो प्रविष्टियाँ जोड़ना।
  • उप-डोमेन (एक *.अग्रणी होस्टनाम के साथ) के लिए एक अतिरिक्त प्रविष्टि ।
  • मुझे लग रहा था कि RefererNotAllowedMapErrorत्रुटि अभी भी उचित कॉन्फ़िगरेशन (और पर्याप्त समय इंतजार कर) का उपयोग करके दिखाई दी। मैंने क्रेडेंशियल कुंजी को हटा दिया, अनुरोध दोहराया (अब हो रहा हैInvalidKeyMapError ) को , नए क्रेडेंशियल्स (बिल्कुल उसी सेटअप का उपयोग करके) बनाया, और यह तब से काम कर रहा है।
  • मात्र प्रोटोकॉल और डोमेन को जोड़ने से लगता है कि इसमें उप-डोमेन शामिल नहीं थे।
  • किसी एक डोमेन के लिए, वर्किंग कॉन्फ़िगरेशन इस तरह दिखता है:

Google API कॉन्फ़िगरेशन से स्क्रीनशॉट

(जैसा कि :)

Accept requests from these HTTP referrers (web sites)
    https://*.example.com/*
    https://example.com/*
    http://*.example.com/*
    http://example.com/*

मेरे मामले में, इस समाधान में मदद मिली लेकिन गलत एपीआई पर एपीआई प्रतिबंध था। किसी कारण के लिए, एक ही त्रुटि संदेश दिया गया था। API स्थान एपीआई ’से as मैप्स जावास्क्रिप्ट एपीआई’ में एपीआई प्रतिबंध को जारी करने से समस्या तय हो गई।
LMG

4

यहाँ छवि विवरण दर्ज करें

इन HTTP रेफ़रर्स (वेब ​​साइटों) से अनुरोध स्वीकार करें

लोकलहोस्ट निर्देशिका पथ लिखें


3
Google के पाठ के अनुसार यह एक वैकल्पिक संपत्ति माना जाता है और यदि यह खाली है तो इसे काम करना चाहिए
ejectamenta

@ayanchakraborty - मैंने स्थानीयहोस्ट / index.html (और विभिन्न रास्तों) के 10 अलग-अलग संयोजनों के साथ-साथ फ़ाइल के विभिन्न संयोजनों की कोशिश की है: ///android_assets/www/index.html - लेकिन कुछ भी काम नहीं कर रहा है। कंसोल में RefererNotAllowedMapError मुझे दिखा रहा है: आपकी साइट प्राधिकृत होने के लिए URL: __file_url __ // android_asset / www / index.html # / tab / map //// `- लेकिन यह और विविधताएँ भी काम नहीं करती हैं।
rolinger

4

मैंने उसी त्रुटि का अनुभव किया:

यहाँ छवि विवरण दर्ज करें

यह लिंक API कुंजी प्रतिबंध सेट करने के तरीके के बारे में बात करता है: https://cloud.google.com/docs/authentication/api-keys#adding_http_restrictions

मेरे मामले में, समस्या यह थी कि मैं इस प्रतिबंध का उपयोग कर रहा था:

HTTP रेफ़रर्स (वेब ​​साइट) इन HTTP रेफ़रर्स (वेब ​​साइट्स) (वैकल्पिक) वाइल्डकार्ड्स के लिए * * के अनुरोधों को स्वीकार करें। यदि आप इसे खाली छोड़ देते हैं, तो अनुरोध किसी भी संदर्भकर्ता से स्वीकार किए जाएंगे। उत्पादन में इस कुंजी का उपयोग करने से पहले रेफरल जोड़ना सुनिश्चित करें। https://*.example.net/*

इसका अर्थ है कि https://www.example.net या https://m.example.net या https://www.example.net/San-salvador/ जैसे URL काम करेंगे। हालाँकि, https://example.net या https://example.net या https://example.net/San-salvador/ जैसे URL काम नहीं करेंगे। मुझे बस एक दूसरा रेफ़र जोड़ने की आवश्यकता थी:

https://example.net/*

मेरे लिए यह समस्या तय हो गई।


4

मैं 2 वेबसाइट डोमेन जोड़ता हूं, उप-डोमेन में "*" सेट काम नहीं कर रहा है लेकिन विशिष्ट उप-डोमेन "डब्ल्यूडब्ल्यूडब्ल्यू" और गैर-उप-डोमेन मेरी वेबसाइटों के लिए उसी Google मानचित्र एपीआई कुंजी का उपयोग करके काम किया गया है।

उपडोमेन में "*" का प्रयोग न करें

आशा है कि यह मदद करेगा।


3

आप अपने एपीआई क्रेडेंशियल्स पेज का स्क्रीनशॉट दिखाते हैं, लेकिन आपको "ब्राउज़र कुंजी 1" पर क्लिक करना होगा और वहां से रेफरर्स जोड़ना होगा।


3

गहरे नेस्टेड पृष्ठों के लिए

यदि आपके पास उदाहरण या नेस्टेड पृष्ठों के लिए फ़ोल्डर में एक परियोजना है

http://yourdomain.com/your-folder/your-page आप इसमें प्रवेश कर सकते हैं

http://yourdomain.com/*/*

महत्वपूर्ण हिस्सा है /*/*/* निर्भर करता है कि आपको कितनी दूर जाने की आवश्यकता है

ऐसा लगता है कि *मैच नहीं होगा/ या गहरे रास्तों में मिल ।

यह आपके पूर्ण डोमेन तक पहुँच प्रदान करेगा, जब तक कि आपके पास इससे अधिक गहरा घोंसला न हो।


3

इन सुधारों में से कोई भी मेरे लिए तब तक काम नहीं कर रहा था जब तक मुझे पता नहीं चल गया कि RefererNotAllowedMapErrorयह परियोजना से जुड़े बिलिंग खाते के न होने के कारण हो सकता है। इसलिए अपने नि: शुल्क परीक्षण या जो कुछ भी सक्रिय करना सुनिश्चित करें।


3
  1. कि आपकी बिलिंग सक्षम है

  2. कि आपकी वेबसाइट Google कंसोल में जुड़ गई है

  3. कि आपकी वेबसाइट आपके ऐप में रेफ़रर्स में जुड़ गई है।

  4. (दोनों www और कोई नहीं www के लिए एक वाइल्डकार्ड करें)

http://www.example.com/ * और http://example.com/ *

  1. वह जावास्क्रिप्ट मैप सक्षम है और आप सही क्रेडेंशियल्स का उपयोग कर रहे हैं

  2. आपके Google कंसोल को ऊपर सक्षम करने के लिए वेबसाइट को आपके DNS में जोड़ा गया है।

  3. काम होने के बाद मुस्कुराओ!


अनुमत रेफ़रर्स की आपकी सूची Google क्लाउड प्लेटफ़ॉर्म वेब कंसोल (कंसोल.cloud.google.com) परAPIs & Services > Credentials > (your key) > Application restrictions > HTTP Referrers
मास्टर ऑफ डक

3

यह एक और शेट्टी है जो Google उत्पाद का एक भयानक कार्यान्वयन है।

इसके साथ मैंने जो समस्या पाई है, वह यह है कि यदि आप IP पते द्वारा API कुंजी को प्रतिबंधित करते हैं, तो यह काम नहीं करेगा ... लेकिन इस बिंदु को स्पष्ट करने के लिए Google से बहुत दूर रहना चाहिए ... यह तब तक नहीं था जब तक मुझे पता चला कि यह समस्या निवारण और शोध नहीं करता:

IP पतों पर प्रतिबंध के साथ API कुंजियों का उपयोग केवल उन वेब सेवाओं के साथ किया जा सकता है जो सर्वर साइड (जैसे जियोकोडिंग एपीआई और अन्य वेब सेवा एपीआई) से उपयोग के लिए अभिप्रेत हैं। इनमें से अधिकांश वेब सेवाओं में मैप्स जावास्क्रिप्ट एपीआई (उदाहरण के लिए, जियोकोडिंग सेवा देखें) के भीतर समान सेवाएं हैं। मैप्स जावास्क्रिप्ट एपीआई क्लाइंट साइड सेवाओं का उपयोग करने के लिए, आपको एक अलग एपीआई कुंजी बनाने की आवश्यकता होगी जिसे एक HTTP रेफ़रर्स प्रतिबंध (एपीआई कुंजी को प्रतिबंधित करना देखें) के साथ सुरक्षित किया जा सकता है।

https://developers.google.com/maps/documentation/javascript/error-messages

FFS Google ... सेटअप पर स्पष्ट करने के लिए जानकारी का बहुत महत्वपूर्ण टुकड़ा ...



2

मुझे Google से इस टिप का उपयोग करके अंतत: मेरा काम मिल गया: ( https://support.google.com/webmasters/answer/35179 )

यहाँ डोमेन और साइट की हमारी परिभाषाएँ हैं। ये परिभाषाएँ सर्च कंसोल सत्यापन के लिए विशिष्ट हैं:

http://example.com/ - A site (because it includes the http:// prefix)
example.com/ - A domain (because it doesn't include a protocol prefix)
puppies.example.com/ - A subdomain of example.com
http://example.com/petstore/ - A subdirectory of http://example.com site

2

मैंने इस काम को करने के लिए संघर्ष किया, लेकिन यहाँ कुछ संकेत दिए गए हैं:

  • रेफरल के रूप में सेट किए गए URL में शामिल हैं http , उदाहरण के लिएhttp://example.com/*
  • Google मैप्स जावास्क्रिप्ट एपीआई सक्षम किया गया था
  • इस खाते पर बिलिंग सेट अप कर दी गई थी

एक बार यह सब ऊपर हल हो जाने के बाद, नक्शे अपेक्षित रूप से प्रदर्शित होते हैं।


1

मैं स्थान API (स्वतः पूर्ण) का उपयोग करने का प्रयास कर रहा था और स्थान API के काम करने से पहले Google क्लाउड कंसोल के भीतर से मैप्स जावास्क्रिप्ट एपीआई को भी सक्षम करना था।


0

साइट पर अपने अलंकार की जाँच करें। Google मैप्स जावास्क्रिप्ट एपीआई को लोड करने के लिए, इस तरह से एक स्क्रिप्ट टैग का उपयोग करें

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap"
async defer></script>

मैं function.php फ़ाइल में अपने वर्डप्रेस साइट पर इस घोषणा का उपयोग कर रहा हूं

wp_enqueue_script("google-maps-v3", "//maps.google.com/maps/api/js?key=YOUR_API_KEY", false, array(), false, true);

मैंने इस प्रारूप पर API कुंजी सेट की है, और इसका काम ठीक है

http://my-domain-name(without www).com/*

यह घोषणा काम नहीं कर रही है

*.my-domain-name.com/*

0

प्रतिबंधों को हटाना (कोई नहीं) मेरे लिए काम किया।


6
प्रतिबंध हटाने को बुरा व्यवहार माना जाता है और यह आपके एपीआई को कमजोर बनाता है।
mtness

2
@mtness हाँ स्पष्ट रूप से, लेकिन पोस्टर ने पहले ही सफलता के बिना पहले ही कोशिश कर ली है। दुर्भाग्य से Google का दस्तावेज़ीकरण अधिक उपयोगी नहीं है। यहां हर उत्तर नए सुझावों में लाया जा रहा है, यह लगभग एक अनुमान लगाने वाले खेल की तरह है ...
जेम्स वोंग - बहाल मोनिका


0

Chrome के जावास्क्रिप्ट कंसोल ने सुझाव दिया कि मैं अपनी HTTP रेफ़रल सूची में पूरे पृष्ठ का पता घोषित करता हूं, इस उदाहरण में http://mywebsite.com/map.htm, हालांकि सटीक पता http://www.mywebsite.com/map.htm है - मेरे पास पहले से ही वाइल्डकार्ड शैलियों के रूप में दूसरों द्वारा सुझाए गए थे लेकिन यह एकमात्र तरीका था जो मेरे लिए काम करेगा।


0

इसने मेरे लिए काम किया। एपीआई कुंजी सेटिंग्स के तहत प्रतिबंधों की 2 प्रमुख श्रेणियां हैं:

  • Application restrictions
  • API restrictions

आवेदन प्रतिबंध:

नीचे रेफरर सेक्शन में अपनी वेबसाइट url " http://www.grupocamaleon.com/boceto/aerial-simple.html " जोड़ें । विभिन्न आवश्यकताओं के आधार पर सेक्शन के दाहिने हाथ पर उदाहरण हैं।

आवेदन प्रतिबंध

एपीआई प्रतिबंध:

एपीआई प्रतिबंधों के तहत आपको ड्रॉपडाउन सूची से स्पष्ट रूप से 'मैप्स जावास्क्रिप्ट जावास्क्रिप्ट' का चयन करना होगा क्योंकि हमारी अनूठी कुंजी का उपयोग केवल Google मैप्स एपीआई (शायद) को कॉल करने के लिए किया जाएगा और इसे नीचे दिए गए स्नैप में देख सकते हैं। मुझे उम्मीद है कि यह आपके लिए काम करता है ..... मेरे लिए काम किया

यहाँ छवि विवरण दर्ज करें

अपनी स्क्रिप्ट जांचें:

स्क्रिप्ट टैग के अंदर अनुचित कुंजी खिलाने के कारण भी समस्या उत्पन्न हो सकती है। यह कुछ इस तरह होना चाहिए:

  <script async defer src="https://maps.googleapis.com/maps/api/jskey=YOUR_API_KEY&callback=initMap"
  type="text/javascript"></script>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.