सीमा तक पहुँचने से पहले अपनी कुंजी के उपयोग पर नज़र रखें
काम के साथ-साथ अपने कोटा हेडर देखते रहने से पता चलता है कि कब सीमा करीब आ रही है, किसी अनुरोध के असल में अस्वीकार होने से काफ़ी पहले।
जो पिन कोड फ़ील्ड केवल लंबाई और अक्षरों का फ़ॉर्मेट जाँचता है, वह ऐसा कोड भी खुशी से स्वीकार कर लेगा जो पूरी तरह सही फ़ॉर्मेट में है और पूरी तरह गलत है। असली वैलिडेशन का मतलब है यह जाँचना कि कोड किसी असली स्थान पर रिज़ॉल्व होता है।
कोड और देश का ISO 3166-1 alpha-2 कोड /v1/postcode को भेजें। मान्य संयोजन निर्देशांक और लोकेशन घटकों के साथ कम से कम एक परिणाम लौटाता है।
GET /v1/postcode?code=SW1A 1AA&country=GB{
"status": "ok",
"postcode": "SW1A 1AA",
"country_code": "GB",
"results": [
{"lat": 51.5014, "lon": -0.1419, "components": {"city": "London", "region": "Greater London", "country": "GB"}}
]
}अगर results खाली आता है, तो पिन कोड और देश का संयोजन किसी ज्ञात स्थान से मेल नहीं खाता। यही आपका संकेत है कि फ़ॉर्म फ़ील्ड को एक स्पष्ट संदेश के साथ अस्वीकार करें, न कि किसी गढ़े हुए कोड को बाद में शिपिंग लेबल तक पहुँचने दें।
पिन कोड एक क्षेत्र को कवर करता है, देश के अनुसार कभी छोटा और कभी बड़ा, इसलिए सफल वैलिडेशन पुष्टि करता है कि कोड मौजूद है, न कि यह कि वह फ़ॉर्म पर दर्ज खास सड़क के पते से मेल खाता है। जब आपको कोड और सड़क दोनों के मेल खाने की ज़रूरत हो, तो पिन कोड वैलिडेशन के साथ पूरे पते पर फ़ॉरवर्ड जियोकोडिंग जाँच भी करें।
API को भेजने से पहले ही किसी कोड को केवल इसलिए अस्वीकार करना कि वह आपकी अपनी फ़ॉर्मेटिंग अपेक्षाओं से मेल नहीं खाता, एक दिखावटी अंतर के कारण मान्य इनपुट को फेंक देना है। छूटी हुई स्पेस, अतिरिक्त स्पेस, या असंगत केस के साथ टाइप किया गया कोड सामान्यीकरण के बाद अक्सर एक मान्य पिन कोड ही होता है। /v1/postcode को कॉल करने से पहले फ़ील्ड में स्पेस और केस को ट्रिम और सामान्य करें, न कि किसी ऐसी फ़ॉर्मेटिंग खामी के लिए प्रविष्टि को सीधे अस्वीकार करें जिसे लुकअप खुद सह लेता।
सिंटैक्स के हिसाब से सही पिन कोड भी सत्यापन में विफल हो सकता है, सिर्फ़ इसलिए कि उसके साथ गलत देश चुना गया था, क्योंकि एक ही संख्यात्मक या अल्फ़ान्यूमेरिक पैटर्न एक से अधिक देशों की प्रणाली में मान्य कोड हो सकता है। अगर किसी ऐसे कोड का लुकअप खाली लौटता है जिसे ग्राहक सही बताता है, तो पिन कोड को ही समस्या मानने से पहले दोबारा जाँच लें कि देश वाला फ़ील्ड वही है जो ग्राहक का वास्तव में मतलब था।
जाँच तब चलाएँ जब फ़ील्ड से फ़ोकस हटे या फ़ॉर्म सबमिट हो, हर कीस्ट्रोक पर नहीं, क्योंकि पिन कोड आमतौर पर पूरा टाइप होने के बाद ही सत्यापन के लायक होता है। इससे जाँच हर टाइप किए गए अक्षर पर एक अनुरोध के बजाय हर सबमिशन प्रयास पर एक अनुरोध तक सीमित रहती है।
हर फ़ॉर्म सबमिशन पर एक सत्यापन कॉल का मतलब एक अनुरोध है। भारी ट्रैफ़िक वाला फ़ॉर्म भी, केवल पिन कोड सत्यापन पर, हर कुंजी के साथ शामिल या बिना कुंजी के एक ही पते से उपलब्ध 2,500 प्रतिदिन मुफ़्त अनुरोधों का एक छोटा हिस्सा ही इस्तेमाल करेगा।
शिपिंग लेबल तक पहुँचने से पहले गलत पिन कोड पकड़ लेना उस एक अतिरिक्त अनुरोध के लायक है जो इसमें लगता है। पैरामीटर का पूरा विवरण पिन कोड लुकअप दस्तावेज़ में है।