Convalidare un indirizzo

Per convalidare un indirizzo utilizzando la convalida dell'indirizzo nell'API Maps JavaScript, chiama il metodo fetchAddressValidation passando un corpo della richiesta con l'indirizzo da convalidare, come mostrato nell'esempio seguente.

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, '  ');
}
    

Puoi definire un indirizzo utilizzando i singoli componenti o addressLines per passare l'intero indirizzo formattato come un letterale array (l'API analizzerà l'indirizzo nei singoli componenti):

address: {
  addressLines: ['1600 Amphitheatre Parkway, Mountain View, CA 94043'],
}
    

Gestire i risultati

Il metodo fetchAddressValidation restituisce una promessa che si risolve in un oggetto AddressValidationResponse. Questo oggetto contiene l'indirizzo convalidato, incluse eventuali correzioni apportate dall'API. Puoi accedere ai vari campi dell'oggetto risposta per determinare lo stato di convalida dell'indirizzo. L'esempio seguente mostra come accedere ai campi dell'oggetto risposta.

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}`);
}
    

Passaggi successivi