تصحيح العنوان - أمثلة

يوضّح هذا المستند عددًا من السيناريوهات الفعلية التي توفّر فيها واجهة برمجة التطبيقات لإثبات صحة العنوان إشارات استجابة تضمن اتّباع إجراء fix من نظامك. يمكنك الاطّلاع على نظرة عامة على سير العمل في مقالة إنشاء منطق التحقّق للحصول على السياق.

أمثلة شائعة: حلّ المشكلة

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

المدينة والرمز البريدي مفقودان

يوضح هذا المثال إدخالاً يحتوي على عنوان الشارع فقط، بدون مدينة أو رمز بريدي.

تم إدخال العنوان منطقة
21 45 40th Street الولايات المتحدة الأمريكية

قرار عدم توفّر المدينة والرمز البريدي

يؤكد المثال أدناه على الإشارات المهمة من الرد.

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "OTHER",
  "geocodeGranularity": "OTHER",
  "hasUnconfirmedComponents": true
}

تشير هذه الإشارات إلى عنوان لا يمكن تسليمه، لذلك يمكنك الاستعلام عن "addressComponents" لمعرفة المزيد من المعلومات:

{
  "componentName": {
    "text": "21",
    "languageCode": "en"
  },
  "componentType": "street_number",
  "confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
  "componentName": {
    "text": "45 40th street",
    "languageCode": "en"
  },
  "componentType": "route",
  "confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
},
{
  "componentName": {
    "text": "United States",
    "languageCode": "en"
  },
  "componentType": "country",
  "confirmationLevel": "CONFIRMED"
}

تعرض واجهة برمجة تطبيقات التحقق من صحة العنوان البلد (الولايات المتحدة) فقط كـ CONFIRMED. تعرض جميع مكونات العنوان الأخرى مثل UNCONFIRMED_BUT_PLAUSIBLE، مع بعض عمليات الحذف المهمة للبيانات، مثل المنطقة المحلية والرمز البريدي.

يجب إدخال رقم الشارع.

يوضح هذا المثال رقم شارع مفقود.

تم إدخال العنوان منطقة
Buckingham Palace Road, SW1W 9TQ London المملكة المتحدة
الحكم على رقم الشارع المفقود
{
    "inputGranularity": "PREMISE_PROXIMITY",
    "validationGranularity": "ROUTE",
    "geocodeGranularity": "ROUTE"
}

قيمة validationGranularity هي ROUTE، ما يشير إلى تطابق مع الشارع، ولكن لا تتوفّر معلومات كافية للوصول إلى المبنى. بالإضافة إلى ذلك، لا يتضمّن البيان السمة addressComplete، وبالتالي تكون السمة false. يكشف طلب بحث آخر عن الكائن address عن نوع مكوّن غير متوفّر:

"missingComponentTypes": [
        "street_number"
      ]

أمثلة على الحالات الحدّية: الإصلاح

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

لم يتم تأكيد رقم الشارع.

في هذا السيناريو، لا يمكن لواجهة برمجة تطبيقات التحقق من صحة العنوان تأكيد رقم الشارع المُقدم، ولكنها تشير إلى أن العنوان مكتمل.

تم إدخال العنوان منطقة
84 Buckingham Palace Road, SW1W 9TQ, London المملكة المتحدة

بيان رقم الشارع لم يتم تأكيده

يؤكد المثال أدناه على الإشارات المهمة.

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "PREMISE_PROXIMITY",
  "geocodeGranularity": "PREMISE_PROXIMITY",
  "addressComplete" : true,
  "hasUnconfirmedComponents": true
}

يستحق الأمر التحقق من الجمع بين دقة التحقق والتقريب على مستوى المؤسسة فقط إلى جانب المكونات غير المؤكدة. يعرض طلب البحث للسمة addressComponents قيم componentType التالية التي لم يتم تأكيدها:

{
  "componentName": {
    "text": "84",
    "languageCode": "en"
  },
  "componentType": "street_number",
  "confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
}

في هذه الحالة، يتم ضبط confirmation_level من street_number على UNCONFIRMED_BUT_PLAUSIBLE. تعني الحالة غير مؤكّدة أنّ الخدمة لا يمكنها مطابقة رقم الشارع 84 في مجموعة البيانات، وتعني كلمة مقبولة أنّ بيانات المكوّن قد تظل صالحة.

لم يتم توفير فرضية فرعية

يصف هذا السيناريو عنوانًا يفتقد إلى مبنى فرعي، مثل رقم شقة أو قسم. بخلاف ذلك، يمكن لواجهة برمجة تطبيقات التحقق من صحة العنوان التحقق من العنوان بشكل كامل. وكما هي الحال عندما يكون أي مكوّن عنوان غير متوفّر، تكون قيمة addressComplete هي false وبالتالي لا تظهر عند الفحص اليدوي للقرار.

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

تم إدخال العنوان منطقة
1 Doctor Carlton B Goodlett Place, San Francisco, CA 94102 الولايات المتحدة الأمريكية

القرار بسبب عدم توفّر الوحدة الفرعية

في هذا المثال، لا يعرض القرار السمة addressComplete، وبالتالي تكون السمة false. لهذا السبب، أنت تعلم أن عنصر عنوان واحدًا على الأقل غير متوقع أو لم يتم حله أو مفقود.

{
  "inputGranularity": "PREMISE",
  "validationGranularity": "PREMISE",
  "geocodeGranularity": "PREMISE",
  "hasInferredComponents": true

}

يكشف طلب بحث address ما يلي:

"missingComponentTypes": [
        "subpremise"
      ]

بعد الحصول على مزيد من الاستفسارات، توفّر بيانات خدمة USPS رمز dpvConfirmation D، ما يشير أيضًا إلى أنّ البيانات الفرعية غير متوفّرة.