गड़बड़ियां
गड़बड़ी होने पर, स्टैंडर्ड फ़ॉर्मैट में गड़बड़ी का रिस्पॉन्स बॉडी दिखेगा. साथ ही, एचटीटीपी स्टेटस कोड को गड़बड़ी वाले स्टेटस पर सेट किया जाएगा.
रिस्पॉन्स में एक ऑब्जेक्ट शामिल होता है. इसमें एक error ऑब्जेक्ट होता है. इसकी ये कुंजियां होती हैं:
code: यह रिस्पॉन्स के एचटीटीपी स्टेटस के जैसा ही होता है.message: गड़बड़ी की एक छोटी सी जानकारी.status: एक स्टेटस कोड, जो गड़बड़ी की वजह बताता है.
उदाहरण के लिए, अमान्य placeId पैरामीटर भेजने पर, यह गड़बड़ी दिखेगी:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
संभावित त्रुटियों में शामिल हैं:
| कोड | स्थिति | मैसेज | समस्या का हल |
|---|---|---|---|
| 400 | INVALID_ARGUMENT |
आपने जो पासकोड दिया है वह अमान्य है. | आपका एपीआई पासकोड मान्य नहीं है या इसे अनुरोध में शामिल नहीं किया गया था. कृपया पक्का करें कि आपने पूरा पासकोड शामिल किया हो और इस पासकोड के लिए एपीआई चालू किया हो. |
| 400 | INVALID_ARGUMENT |
"\"path\" पैरामीटर में अमान्य वैल्यू है: ☃" | आपके अनुरोध में अमान्य आर्ग्युमेंट शामिल थे. इस गड़बड़ी की सबसे आम वजहें ये हैं:
अगर किसी ऐसी सड़क के लिए |
| 403 | PERMISSION_DENIED |
रजिस्टर न किए गए अनुरोध को ब्लॉक कर दिया गया है. कृपया Google Developers Console का इस्तेमाल करके साइन अप करें. | अनुरोध को इन वजहों से अस्वीकार किया गया है:
Google Maps Platform के प्रॉडक्ट इस्तेमाल करने के लिए, आपके खाते पर बिलिंग की सुविधा चालू होनी चाहिए साथ ही, सभी अनुरोधों में एक मान्य एपीआई पासकोड शामिल होना चाहिए. इसे ठीक करने के लिए, यह तरीका अपनाएं: |
| 404 | NOT_FOUND |
इस सेवा के लिए, एचटीटीपीएस ज़रूरी है. | पक्का करें कि आपने
https://roads.googleapis.com/ पर अनुरोध भेजे हों, न कि
http://roads.googleapis.com/ पर. |
| 429 | RESOURCE_EXHAUSTED |
प्रोजेक्ट के अनुरोध की सीमाएं पूरी हो जाने की वजह से, अनुरोध को थ्रॉटल किया गया. | आपने Google Cloud Platform Console में कॉन्फ़िगर की गई अनुरोध की सीमा पार कर ली है. आम तौर पर, यह सीमा हर दिन के अनुरोध , हर 100 सेकंड में किए जाने वाले अनुरोध, और हर उपयोगकर्ता के लिए हर 100 सेकंड में किए जाने वाले अनुरोध के तौर पर सेट की जाती है. इस सीमा को इस तरह कॉन्फ़िगर किया जाना चाहिए, ताकि उपयोगकर्ताओं का कोई एक या छोटा ग्रुप, रोज़ाना के कोटे को खत्म न कर पाए. साथ ही, सभी उपयोगकर्ताओं को उचित ऐक्सेस मिलता रहे. इन सीमाओं को कॉन्फ़िगर करने के लिए, एपीआई के इस्तेमाल की सीमा तय करना लेख पढ़ें. |
एक्स्पोनेंशियल बैकऑफ़
अनुरोध पूरे न होने पर, आपको एक्स्पोनेंशियल बैकऑफ़ के साथ अनुरोध फिर से भेजने चाहिए. उदाहरण के लिए, अगर कोई अनुरोध एक बार पूरा नहीं होता है, तो एक सेकंड बाद फिर से कोशिश करें. अगर वह फिर से पूरा नहीं होता है, तो दो सेकंड बाद फिर से कोशिश करें. इसके बाद, चार सेकंड बाद फिर से कोशिश करें. इसी तरह, आगे भी कोशिश करते रहें. इससे यह पक्का होता है कि खराब अनुरोध या बड़े पैमाने पर होने वाली गड़बड़ियों की वजह से, Google के सर्वर पर ज़्यादा लोड न पड़े. ऐसा इसलिए, क्योंकि कई क्लाइंट, अनुरोधों को बहुत तेज़ी से फिर से भेजने की कोशिश करते हैं.
समस्या के हल के लिए, अक्सर पूछे जाने वाले सवाल
क्रियान्वयन संबंधी समस्याएं
- मुझे अपने वाहन की जगह की जानकारी कितनी बार सैंपल करनी चाहिए?
- सड़क पर स्नैप करने के बेहतर नतीजे पाने के लिए, हर 1 से 10 सेकंड में सैंपल करने का सुझाव दिया जाता है.
- क्या हर क्वेरी के लिए भेजे जा सकने वाले पॉइंट की संख्या पर कोई सीमा है?
- हां, किसी क्वेरी में ज़्यादा से ज़्यादा 100 पॉइंट हो सकते हैं.
- मुझे स्नैप किए गए अक्षांश/देशांतर की जोड़ियों को सेव करने के लिए, सटीक जानकारी का कौनसा लेवल इस्तेमाल करना चाहिए?
- यह पक्का करने के लिए कि स्नैप किए गए पाथ, ज़ूम के सभी लेवल पर सड़कों के साथ-साथ दिखें, आपको स्नैप किए गए अक्षांश/देशांतर की जोड़ियों को सटीक जानकारी के सातवें डेसिमल प्लेस पर सेव करना चाहिए. ऐसा करने से, ज़्यादा ज़ूम करने पर भी स्नैप किए गए पाथ, सड़कों के साथ-साथ दिखते हैं.
- क्या स्नैप किए गए पाथ दिखाने के लिए, एनकोड की गई पॉलीलाइन का इस्तेमाल किया जा सकता है?
- एनकोड की गई पॉलीलाइन सिर्फ़ पांचवें डेसिमल प्लेस की सटीक जानकारी के लिए तय की जाती हैं. इससे करीब दो मीटर की गड़बड़ी होती है. इसलिए, अगर आपको स्नैप किए गए पाथ को ज़्यादा ज़ूम करने पर भी सड़कों के साथ-साथ दिखाना है, तो एनकोड की गई पॉलीलाइन का इस्तेमाल नहीं किया जा सकता.
सामान्य समस्याएं
- कुछ पॉइंट स्नैप नहीं हो रहे हैं या स्नैप किए गए पाथ में गैप हैं. मैं इसे कैसे ठीक करूं?
-
- अगर तय समय के अंतराल पर पॉइंट सैंपल किए जा रहे हैं, तो पक्का करें कि पॉइंट को कम समय के अंतराल (हर 1 से 10 सेकंड) पर सैंपल किया जाए. अगर ज़्यादा समय के अंतराल (उदाहरण के लिए, 60 सेकंड) का इस्तेमाल किया जाता है, तो हो सकता है कि सड़क पर स्नैप करने का एल्गोरिदम, तय की गई सड़कों की सटीक जानकारी न दे पाए.
- अगर पॉइंट बनाने के लिए, मैन्युअल तरीके से मैप पर क्लिक किया जा रहा है, तो ऐसे पाथ बनाना बहुत आसान है जिनमें कम पॉइंट या बिखरे हुए पॉइंट हों. स्नैपिंग एल्गोरिदम, ऐसे पाथ को अच्छी तरह से हैंडल नहीं करता. स्नैपिंग एल्गोरिदम, आस-पास मौजूद पॉइंट के लिए सबसे अच्छी तरह काम करता है. अपने पाथ की जांच करने के लिए, सड़क पर स्नैप करने का डेमो आज़माएं या Roads inspector का इस्तेमाल करें.
- ज़ूम इन करने पर, मेरे स्नैप किए गए पाथ, सड़कों से थोड़े अलग या टेढ़े-मेढ़े क्यों दिख रहे हैं?
-
- क्या स्नैप किए गए अक्षांश/देशांतर की जोड़ियों को दिखाने से पहले, उनकी सटीक जानकारी को छोटा किया जा रहा है? स्नैप किए गए अक्षांश/देशांतर की जोड़ियों को सातवें डेसिमल प्लेस से कम की सटीक जानकारी पर सेव करने से, स्नैप किए गए पाथ को मैप पर दिखाने पर सटीक जानकारी से जुड़ी गड़बड़ियां होती हैं.
- क्या एनकोड की गई पॉलीलाइन का इस्तेमाल किया जा रहा है? एनकोड की गई पॉलीलाइन, अक्षांश/देशांतर की जोड़ियों को पांचवें डेसिमल प्लेस पर छोटा कर देती हैं. इससे कई मीटर की गड़बड़ी होती है. इसलिए, ज़्यादा ज़ूम करने पर लाइनें टेढ़ी-मेढ़ी या सड़कों से थोड़ी अलग दिखती हैं.
अगर इनमें से कोई भी वजह नहीं है, तो हो सकता है कि मैप टाइलें हाल ही में अपडेट की गई हों. इस वजह से, वे स्नैपिंग के लिए इस्तेमाल किए जाने वाले सड़क इंडेक्स के साथ सिंक न हो पाई हों. अगर आपकी कुछ ही क्वेरी पर असर पड़ा है, तो इसकी वजह यही हो सकती है. Google Maps को नियमित तौर पर अपडेट किया जाता है. इसलिए, ऐसा कभी-कभी हो सकता है. अगर मैप पर पुराने पाथ नियमित तौर पर देखे जाते हैं, तो ऐसा ज़्यादा बार हो सकता है. उदाहरण के लिए, ऐसे पाथ जो कुछ हफ़्ते पहले स्नैप किए गए थे. बेहतर तरीके से विज़ुअलाइज़ेशन के लिए, मैप पर पुराने पाथ दिखाने से ठीक पहले उन्हें फिर से स्नैप करें. इससे, मैप टाइलें और स्नैपिंग के लिए इस्तेमाल किए जाने वाले सड़क इंडेक्स के बीच की गड़बड़ियां कम हो जाती हैं.
- सड़क X की गति सीमा गलत तरीके से क्यों दिख रही है?
- गति सीमाएं, कई सोर्स से मिलती हैं. इनकी सटीक जानकारी और कवरेज अलग-अलग होती है.
अगर आपको कोई पैटर्न दिखता है, जैसे कि किसी खास तरह की सड़क या किसी खास इलाके के लिए गति सीमाएं लगातार गलत दिख रही हैं, तो कृपया हमें इसकी जानकारी देने के लिए, यह तरीका अपनाएं:
- अपने डेस्कटॉप कंप्यूटर पर Google Maps खोलें या Android के लिए Google Maps ऐप्लिकेशन खोलें.
- बाईं ओर मौजूद मेन्यू खोलें.
- सुझाव, शिकायत या राय भेजें को चुनें. ध्यान दें: आपसे लॉग इन करने के लिए कहा जा सकता है.
- मैप में बदलाव करें को चुनें.
- वह सड़क सेगमेंट चुनें जिसमें आपको बदलाव करना है.
- आगे बढ़ें को चुनें.
- "अन्य" फ़ील्ड में, बताएं कि उस सड़क के लिए गति सीमा गलत है.
- सबमिट करें को चुनें.
- स्नैप किया गया मेरा पाथ, सड़क के साथ-साथ चलने के बजाय, कोनों से क्यों कट रहा है?
-
इस समस्या को ठीक करने के लिए, यह देखें:
- पक्का करें कि
interpolateपैरामीटर कोtrueपर सेट किया गया हो. - पक्का करें कि आपके ओरिजनल डेटा पॉइंट, कम समय के अंतराल (हर 1 से 10 सेकंड) पर सैंपल किए गए हों.
- पक्का करें कि
- मुझे ऐसी सड़क के लिए स्नैप किए गए पाथ में, सड़क के कई सेगमेंट क्यों दिख रहे हैं जिसकी गति सीमा में कोई बदलाव नहीं हुआ है?
- जब
interpolateपैरामीटर कोtrueपर सेट किया जाता है, तो सड़क पर स्नैप करने की क्वेरी, एक पॉलीलाइन दिखाती है. यह पॉलीलाइन, कोनों, घुमावों, और गोल चक्करों के आस-पास सड़क के साथ-साथ चलती है. अगर सड़क में घुमाव हैं, तो गति सीमा में बदलाव न होने पर भी, सड़क के कई सेगमेंट दिखते हैं. ऐसा इसलिए, ताकि सड़क की ज्यामिति के साथ-साथ चलने वाली पॉलीलाइन बनाई जा सके.