برای اعتبارسنجی نشانی بااستفاده از «اعتبارسنجی نشانی» در Maps JavaScript API،
روش fetchAddressValidation را با ارسال بدنه درخواست حاوی نشانی موردنظر برای اعتبارسنجی فراخوانی کنید، همانطور که در مثال زیر نشان داده شده است.
async function validateAddress() { // Import the Address Validation library. const {AddressValidation} = await google.maps.importLibrary('addressValidation'); // Call the fetchAddressValidation method. const result = await AddressValidation.fetchAddressValidation({ address: { postalCode: '94043', regionCode: 'US', languageCode: 'en', addressLines: ['1600 Amphitheatre', 'Parkway'], } }); // Log the results to the console. document.querySelector('pre').textContent = JSON.stringify(result, null, ' '); }
میتوانید نشانی را بااستفاده از مؤلفههای مجزا یا بااستفاده از addressLines
تعریف کنید تا کل نشانی قالببندیشده را بهعنوان آرایه لفظی ارسال کنید (میانای برنامهسازی کاربردی نشانی را
به مؤلفههای مجزا تجزیه خواهد کرد):
address: { addressLines: ['1600 Amphitheatre Parkway, Mountain View, CA 94043'], }
مدیریت نتایج
روش fetchAddressValidation یک promise برمیگرداند که به یک شیء AddressValidationResponse تبدیل میشود. این شیء حاوی نشانی معتبرشده است،
ازجمله هرگونه اصلاحی که توسط API انجام شده است. میتوانید به فیلدهای مختلف شیء پاسخ دسترسی پیدا کنید تا وضعیت اعتبارسنجی نشانی را تعیین کنید. مثال زیر
نحوه دسترسی به فیلدهای شیء پاسخ را نشان میدهد.
async function validateAddress() { // Import the Address Validation library. const {AddressValidation} = await google.maps.importLibrary('addressValidation'); // Call the fetchAddressValidation method. const result = await AddressValidation.fetchAddressValidation({ address: { postalCode: '94043', regionCode: 'US', languageCode: 'en', addressLines: ['1600 Amphitheatre', 'Parkway'], } }); // Log the results to the console: console.log(`Formatted address: ${result.address.formattedAddress}`); console.log(`Entered: ${result.verdict.inputGranularity}`); console.log(`Validated: ${result.verdict.validationGranularity}`); console.log(`Address complete: ${result.verdict.addressComplete}`); console.log(`Has unconfirmed components: ${result.verdict.hasUnconfirmedComponents}`); console.log(`Has inferred components: ${result.verdict.hasInferredComponents}`); console.log(`Has replaced components: ${result.verdict.hasReplacedComponents}`); }