تتضمّن هذه الصفحة أمثلة على كيفية استخدام مكتبات عميل Address Validation API لاستدعاء الخدمات التالية:
تثبيت مكتبات البرامج
راجِع مكتبات عملاء واجهة برمجة التطبيقات Address Validation API للحصول على تعليمات التثبيت.
المصادقة
عند استخدام مكتبات برامج، عليك استخدام بيانات الاعتماد التلقائية للتطبيق (ADC) لإجراء المصادقة. للحصول على معلومات حول إعداد ADC، يُرجى الاطّلاع على توفير بيانات الاعتماد لـ "بيانات الاعتماد التلقائية للتطبيق". للحصول على معلومات حول استخدام ADC مع مكتبات العميل، راجِع المصادقة باستخدام مكتبات العميل.
يمكنك أيضًا استخدام مفاتيح واجهة برمجة التطبيقات للمصادقة على مكتبات العميل، على سبيل المثال:
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();
عند استخدام مفاتيح واجهة برمجة التطبيقات في تطبيقاتك، احرص على الحفاظ على أمانها أثناء التخزين والنقل. قد يؤدي كشف مفاتيح واجهة برمجة التطبيقات إلى حدوث رسوم غير متوقعة في حسابك.
تستخدِم الأمثلة الواردة في هذه الصفحة "بيانات الاعتماد التلقائية للتطبيق".
أمثلة
validateAddress
في ما يلي مثال على كيفية استدعاء validateAddress
باستخدام مكتبة عميل .NET.
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}");
}
}
حدِّد الكائن PostalAddress
الذي يتضمّن حقول عناوين مقسّمة إلى أجزاء مثل RegionCode
وLocality
وAddressLines
. عند إنشاء طلب المثال،
يتم استخدام PostalAddress
هذا لإنشاء ValidateAddressRequest
. يتم بعد ذلك استدعاء الطريقة
ValidateAddressAsync
لتقديم الطلب، ويتم عرض تفاصيل
من الرد، مثل ValidationGranularity
وFormattedAddress
.
provideValidationFeedback
في ما يلي مثال على كيفية استدعاء provideValidationFeedback
باستخدام مكتبة عميل .NET.
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}");
}
}
أنشئ ProvideValidationFeedbackRequest
لإرسال معلومات حول النتيجة النهائية لسلسلة التحقّق من صحة العنوان. يتطلّب الطلب Conclusion
لتحديد ما إذا كان قد تم استخدام عنوان المستخدم الأصلي أو عنوان Google الذي تم التحقّق منه. الأهم من ذلك، يجب أيضًا تقديم ResponseId
الذي تم الحصول عليه من ValidateAddressResponse
الأوّلي لربط الملاحظات بالمعاملة الصحيحة.