الأدلة

التحقق من صحة الرمز البريدي قبل حفظه

حقل الرمز البريدي الذي لا يفحص إلا الطول وصيغة الأحرف سيقبل دون تردد رمزًا منسقًا تمامًا وخاطئًا تمامًا. التحقق الفعلي يعني التأكد من أن الرمز يقابل مكانًا حقيقيًا.

استدعاء التحقق

مرّر الرمز ورمز البلد وفق ⁦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 طلب مجاني يوميًا المضمنة مع كل مفتاح، أو المتاحة من عنوان واحد دون مفتاح، في التحقق من الرموز البريدية وحده.

اكتشاف رمز بريدي خاطئ قبل أن يصل إلى ملصق الشحن يستحق الطلب الإضافي الواحد الذي يتطلبه. تفاصيل المعاملات كاملة موجودة في توثيق الاستعلام عن الرمز البريدي.