Przykłady biblioteki klienta interfejsu Address Validation API

Na tej stronie znajdziesz przykłady korzystania z bibliotek klienta interfejsu Address Validation API do wywoływania tych usług:

Instalowanie bibliotek klienta

Instrukcje instalacji znajdziesz w bibliotekach klienta interfejsu Address Validation API.

Uwierzytelnianie

Gdy używasz bibliotek klienta, do uwierzytelniania używasz domyślnych danych logowania aplikacji (ADC). Informacje o konfigurowaniu domyślnego uwierzytelniania aplikacji znajdziesz w artykule Podawanie danych uwierzytelniających domyślnego uwierzytelniania aplikacji. Informacje o używaniu ADC z bibliotekami klienta znajdziesz w artykule Uwierzytelnianie za pomocą bibliotek klienta.

Kluczy API możesz też używać do uwierzytelniania w bibliotekach klienta, na przykład:

using Google.Maps.AddressValidation.V1;
using Google.Api.Gax.Grpc;
using Grpc.Core;
...
// Create settings to pass the API key as a header in every request.
var apiHeader = CallSettings.FromHeader("X-Goog-Api-Key", "API_KEY");
var defaultSettings = AddressValidationSettings.GetDefault();
var settings = new AddressValidationSettings
{
    ValidateAddressSettings = defaultSettings.ValidateAddressSettings.MergedWith(apiHeader),
    ProvideValidationFeedbackSettings = defaultSettings.ProvideValidationFeedbackSettings.MergedWith(apiHeader)
};
// Create a client builder with the custom settings.
AddressValidationClientBuilder builder = new AddressValidationClientBuilder
{
    Settings = settings,
    // Use SslCredentials to create a secure channel for API key authentication.
    ChannelCredentials = new SslCredentials()
};
AddressValidationClient client = await builder.BuildAsync();

Jeśli używasz w aplikacjach kluczy interfejsu API, zadbaj o ich bezpieczeństwo zarówno podczas przechowywania, jak i przesyłania. Ujawnienie kluczy interfejsu API może spowodować nieoczekiwane obciążenia na Twoim koncie.

Przykłady na tej stronie używają domyślnego uwierzytelniania aplikacji.

Przykłady

validateAddress

Poniżej znajdziesz przykład wywołania funkcji validateAddress za pomocą biblioteki klienta.

using Google.Maps.AddressValidation.V1;
using Google.Type;
...
private static async Task CallAddressValidation()
{
    // Create the Address Validation Client
    AddressValidationClient client = await AddressValidationClient.CreateAsync();
    // Define the request with the address to be validated
    var request = new ValidateAddressRequest
    {
        Address = new PostalAddress
        {
            RegionCode = "US",
            LanguageCode = "en",
            PostalCode = "94043",
            AdministrativeArea = "CA",
            Locality = "Mountain View",
            AddressLines = { "1600 Amphitheatre Parkway" }
        }
    };
    try
    {
        // Call the API asynchronously
        ValidateAddressResponse response = await client.ValidateAddressAsync(request);
        // Process the results
        Console.WriteLine($"Validation Granularity: {response.Result.Verdict.ValidationGranularity}");
        Console.WriteLine($"Formatted Address: {response.Result.Address.FormattedAddress}");
        Console.WriteLine($"Response ID: {response.ResponseId}");
    }
    catch (Exception ex)
    {
        Console.WriteLine($"An error occurred: {ex.Message}");
    }
}

Zdefiniuj obiekt PostalAddress z polami adresu podzielonymi na komponenty, takimi jak RegionCode, LocalityAddressLines. Podczas tworzenia przykładowego żądania ten PostalAddress służy do tworzenia ValidateAddressRequest. Następnie wywoływana jest metoda ValidateAddressAsync, aby przesłać żądanie, a szczegóły z odpowiedzi, takie jak ValidationGranularityFormattedAddress, są wyświetlane na wyjściu.

provideValidationFeedback

Poniżej przedstawiamy przykład wywołania funkcji provideValidationFeedback za pomocą biblioteki klienta.

using Google.Maps.AddressValidation.V1;
...
private static async Task ProvideValidationFeedback()
{
    AddressValidationClient client = await AddressValidationClient.CreateAsync();

    var feedbackRequest = new ProvideValidationFeedbackRequest
    {
        // Set the conclusion based on the user's choice. This exampels uses ValidatedVersionUsed
        Conclusion = ProvideValidationFeedbackRequest.Types.ValidationConclusion.ValidatedVersionUsed,
        // Provide the ID from the validation response.
        ResponseId = "Response_ID"
    };
    try
    {
        Console.WriteLine("Sending feedback to the API");
        // This call returns an empty response on success.
        await client.ProvideValidationFeedbackAsync(feedbackRequest);
        Console.WriteLine(" -> Feedback sent successfully!");
    }
    catch (Exception ex)
    {
        Console.WriteLine($"An error occurred: {ex.Message}");
    }
}

Utwórz ProvideValidationFeedbackRequest, aby wysłać informacje o ostatecznym wyniku sekwencji weryfikacji adresu. Prośba wymaga użycia Conclusion, aby określić, czy użyto pierwotnego adresu użytkownika czy zweryfikowanego adresu Google. Co ważne, musisz też podać ResponseId uzyskany z pierwotnego ValidateAddressResponse, aby powiązać opinię z odpowiednią transakcją.