این سند تعدادی از سناریوهای دنیای واقعی را توصیف میکند که در آنها Address Validation API سیگنالهای پاسخی ارائه میدهد که ممکن است رفتار اصلاح ازسوی سیستم شما را تضمین کند. برای بافت، نمونه گردشهای کاری را در ساختن منطق اعتبارسنجی ببینید.
نمونههای رایج: اصلاح
این بخش نمونههای رایجی را شرح میدهد که در آنها Address Validation API سیگنالهای پاسخی ارائه میدهد که نشاندهنده اطلاعات نشانی با کیفیت پایینتر است.
شهر و کد پستی وجود ندارد
این مثال ورودیای را نشان میدهد که فقط نشانی خیابان دارد و شهر یا کد پستی ندارد.
| نشانی واردشده | منطقه |
|---|---|
| 21 45 40th street | ایالات متحده آمریکا |
رأی برای شهر و کد پستی ازقلمافتاده
مثال زیر بر نشانهای مهم پاسخ تأکید میکند.
{
"inputGranularity": "PREMISE",
"validationGranularity": "OTHER",
"geocodeGranularity": "OTHER",
"hasUnconfirmedComponents": true,
"possibleNextAction": "FIX"
}
possibleNextAction نشانهای اولیه از این است که نشانی ممکن است
قابلتحویل نباشد. سایر مؤلفههای برجستهشده نیز از این امکان پشتیبانی میکنند، بنابراین میتوانید برای کسب اطلاعات بیشتر از 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"
}
Address Validation API فقط کشور (ایالات متحده) را بهعنوان CONFIRMED برمیگرداند.
این روش همه مؤلفههای دیگر نشانی را بهصورت UNCONFIRMED_BUT_PLAUSIBLE برمیگرداند،
با برخی حذفیات مهم در دادهها، مانند منطقه و کد پستی.
پلاک ثبت نشده است
این نمونه شماره خیابان را نشان نمیدهد.
| نشانی واردشده | منطقه |
|---|---|
| Buckingham Palace Road, SW1W 9TQ London | بریتانیا |
رأی برای شماره خیابان جاافتاده
{
"inputGranularity": "PREMISE_PROXIMITY",
"validationGranularity": "ROUTE",
"geocodeGranularity": "ROUTE",
"possibleNextAction": "FIX"
}
بار دیگر، possibleNextAction نشانهای اولیه ارائه میدهد که ممکن است نشانی قابلتحویل نباشد. علاوهبراین، validationGranularity
ROUTE است که نشاندهنده مطابقت با خیابان است، اما اطلاعات کافی برای
رسیدن به محل وجود ندارد. علاوهبراین، ویژگی addressComplete در حکم وجود ندارد و بنابراین false است. پرسمان دیگری از شیء address نشان میدهد که نوع مؤلفه وجود ندارد:
"missingComponentTypes": [
"street_number"
]
نمونههای موارد حاشیهای: رفع مشکل
در برخی شرایط، اینکه نشانی را اصلاح، تأیید، یا قبول کنید به سناریوی کسبوکار خاص شما بستگی دارد. مثالهای زیر سناریوهایی را نشان میدهند که ممکن است دقیقاً در دسته اصلاح قرار نگیرند.
پلاک تأییدنشده
در این سناریو، Address Validation API نمیتواند شماره خیابان ارائهشده را تأیید کند، اما نشان میدهد که نشانی کامل است.
| نشانی واردشده | منطقه |
|---|---|
| 84 Buckingham Palace Road, SW1W 9TQ, London | بریتانیا |
رأی برای شماره خیابان تأییدنشده
مثال زیر بر نشانهای مهم تأکید میکند.
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE_PROXIMITY",
"geocodeGranularity": "PREMISE_PROXIMITY",
"addressComplete" : true,
"hasUnconfirmedComponents": true,
"possibleNextAction": "ACCEPT"
}
ارزش دارد که ترکیب دانهبندی اعتبارسنجی فقط برای تقریب سطح محل همراه با مؤلفههای تأییدنشده بررسی شود. پُرسمان دارایی
addressComponents موارد تأییدنشده componentType زیر را نشان میدهد:
{
"componentName": {
"text": "84",
"languageCode": "en"
},
"componentType": "street_number",
"confirmationLevel": "UNCONFIRMED_BUT_PLAUSIBLE"
}
در اینجا، confirmation_level street_number روی
UNCONFIRMED_BUT_PLAUSIBLE تنظیم شده است. تأییدنشده یعنی سرویس نمیتواند شماره خیابان ۸۴ را در مجموعه دادههایش مطابقت دهد، و محتمل یعنی دادههای مؤلفه همچنان میتواند معتبر باشد.
زیرمجموعه موجود نیست
این سناریو نشانیای را توصیف میکند که فقط فاقد زیرمکان است، مانند شماره آپارتمان یا بخش. درغیراینصورت، Address Validation API میتواند نشانی را بهطور کامل اعتبارسنجی کند. همانند زمانی که یکی از مؤلفههای نشانی وجود ندارد،
addressComplete false است و بنابراین در بازرسی دستی
رأی وجود ندارد.
برای مثال، فرض کنید مشتری نشانی معتبری را برای دفتر ارزیابی شهر سانفرانسیسکو وارد میکند، اما شماره اتاق را در ورودی وارد نمیکند.
| نشانی واردشده | منطقه |
|---|---|
| 1 Doctor Carlton B Goodlett Place, San Francisco, CA 94102 | ایالات متحده آمریکا |
رأی برای زیرمکان ناموجود
در این مثال، حکم ویژگی addressComplete را نمایش نمیدهد، بنابراین
false است. بههمین دلیل، میدانید که حداقل یکی از عناصر نشانی
غیرمنتظره، حلنشده، یا جاافتاده است.
{
"inputGranularity": "PREMISE",
"validationGranularity": "PREMISE",
"geocodeGranularity": "PREMISE",
"hasInferredComponents": true,
"possibleNextAction": "CONFIRM_ADD_SUBPREMISES"
}
پُرسمان address موارد زیر را نشان میدهد:
"missingComponentTypes": [
"subpremise"
]
پساز بررسی بیشتر، دادههای USPS کد dpvConfirmation
D را ارائه میدهد که نشاندهنده نبودن زیرمجموعه است.