این سند تعدادی از سناریوهای دنیای واقعی را شرح میدهد که در آنها API اعتبارسنجی آدرس، سیگنالهای پاسخی ارائه میدهد که رفتار اصلاحی را از سیستم شما تضمین میکند. مثالهای اینجا گویا هستند، اما جامع نیستند. برای درک بهتر، به نمای کلی گردش کار در بخش «منطق اعتبارسنجی خود را بسازید» مراجعه کنید.
مثالهای رایج: رفع اشکال
این بخش مثالهای رایجی را شرح میدهد که در آنها API اعتبارسنجی آدرس، سیگنالهای پاسخی ارائه میدهد که نشاندهنده اطلاعات آدرس با کیفیت پایینتر است.
شهر و کد پستی موجود نیست
این مثال ورودیای را نشان میدهد که فقط آدرس خیابان را دارد و شهر یا کد پستی را نشان نمیدهد.
| آدرس وارد شده | منطقه |
|---|---|
| خیابان چهلم، پلاک ۲۱، پلاک ۴۵ | ایالات متحده آمریکا |
حکم عدم ذکر شهر و کد پستی
مثال زیر بر سیگنالهای مهم حاصل از پاسخ تأکید میکند.
{
"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"
}
API اعتبارسنجی آدرس فقط کشور (ایالات متحده) را به عنوان CONFIRMED برمیگرداند. سایر اجزای آدرس را به عنوان UNCONFIRMED_BUT_PLAUSIBLE برمیگرداند، و برخی از دادههای مهم مانند محل و کد پستی را از قلم میاندازد.
شماره خیابان گم شده
این مثال شماره خیابان گم شده را نشان میدهد.
| آدرس وارد شده | منطقه |
|---|---|
| جاده کاخ باکینگهام، SW1W 9TQ لندن | بریتانیا |
حکم مربوط به گم شدن شماره خیابان
{
"inputGranularity": "PREMISE_PROXIMITY",
"validationGranularity": "ROUTE",
"geocodeGranularity": "ROUTE"
}
validationGranularity ROUTE است که نشاندهنده تطابق با خیابان است، اما اطلاعات کافی برای رسیدن به فرضیه را ندارد. علاوه بر این، ویژگی addressComplete در حکم وجود ندارد و بنابراین false است. یک پرسوجوی بیشتر از شیء address نوع کامپوننت از دست رفته را نشان میدهد:
"missingComponentTypes": [
"street_number"
]
مثالهای حاشیهای: رفع مشکل
در برخی شرایط، اینکه آیا شما یک آدرس را اصلاح، تأیید یا قبول میکنید، به سناریوی خاص کسبوکار شما بستگی دارد. مثالهای زیر سناریوهایی را نشان میدهند که ممکن است دقیقاً در دسته اصلاح قرار نگیرند.
شماره خیابان تایید نشده
در این سناریو، API اعتبارسنجی آدرس نمیتواند شماره خیابان ارائه شده را تأیید کند، با این حال نشان میدهد که آدرس کامل است.
| آدرس وارد شده | منطقه |
|---|---|
| خیابان کاخ باکینگهام، پلاک ۸۴، SW1W 9TQ، لندن | بریتانیا |
حکم برای شماره خیابان تایید نشده
مثال زیر بر سیگنالهای مهم تأکید دارد.
{
"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 تنظیم شده است. "تایید نشده" (Unconfirmed ) به این معنی است که سرویس نمیتواند با شماره خیابان ۸۴ در مجموعه دادههای خود مطابقت داشته باشد، و "قابل قبول" (plavible) به این معنی است که دادههای کامپوننت هنوز میتوانند معتبر باشند.
فرضیه فرعی مفقود شده
این سناریو، آدرسی را توصیف میکند که فقط یک شماره فرعی مانند شماره آپارتمان یا دپارتمان را ندارد. در غیر این صورت، API اعتبارسنجی آدرس میتواند آدرس را به طور کامل اعتبارسنجی کند. همانطور که در صورت فقدان هر یک از اجزای آدرس، مقدار addressComplete false است و بنابراین در بررسی دستی حکم وجود ندارد.
برای روشن شدن موضوع، فرض کنید مشتری آدرس معتبری را برای دفتر ارزیاب شهر سانفرانسیسکو وارد میکند، اما شماره اتاق را از ورودی فراموش میکند.
| آدرس وارد شده | منطقه |
|---|---|
| ۱ دکتر کارلتون بی گودلت پلیس، سانفرانسیسکو، کالیفرنیا ۹۴۱۰۲ | ایالات متحده آمریکا |
حکم برای فقدان فرض فرعی
در این مثال، حکم، ویژگی addressComplete را نمایش نمیدهد، بنابراین مقدار آن false است. به همین دلیل، میدانید که حداقل یک عنصر آدرس غیرمنتظره، حل نشده یا مفقود است.
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"hasInferredComponents": true
}
یک پرس و جوی address موارد زیر را نشان میدهد:
"missingComponentTypes": [
"subpremise"
]
پس از بررسی بیشتر، دادههای USPS کد dpvConfirmation D ارائه میدهد که نشاندهندهی یک زیرفرض مفقود شده نیز هست.