.خالص

Google یک کتابخانه کلاینت دات نت برای تعامل با Ad Manager API فراهم می کند. توصیه می کنیم از کتابخانه مشتری با NuGet استفاده کنید.

برای شروع، یک پروژه جدید در IDE مورد نظر خود ایجاد کنید یا وابستگی را به پروژه موجود اضافه کنید. Google مصنوعات کتابخانه مشتری را به عنوان Google.Ads.AdManager.V1 در مخزن NuGet منتشر می کند.

مرجع پکیج

<!-- MyProject.csproj -->
<PackageReference Include="Google.Ads.AdManager.V1" Version="1.0.0-beta01" />

NET CLI

dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta01

اعتبارنامه ها را پیکربندی کنید

کتابخانه مشتری دات نت از OAuth2 و اعتبارنامه پیش فرض برنامه (ADC) برای احراز هویت استفاده می کند.

ADC اعتبارنامه ها را به ترتیب در مکان های زیر جستجو می کند:

  1. متغیر محیطی GOOGLE_APPLICATION_CREDENTIALS .
  2. اطلاعات کاربری کاربر از طریق Google Cloud CLI (gcloud CLI) تنظیم شده است.
  3. هنگام اجرا در Google Cloud، حساب سرویس متصل به منبع Google Cloud است.

برای ایجاد و پیکربندی اعتبار ADC خود، به احراز هویت مراجعه کنید.

اولین درخواست خود را مطرح کنید

هر سرویس دارای یک شی ServiceClient با روش های همزمان و ناهمزمان برای هر روش REST است. مثال زیر یک Network به صورت همزمان می خواند. همه موجودیت ها با نام منبعی که از نوع و شناسه عددی موجودیت تشکیل شده است، شناسایی می شوند.

    using Google.Ads.AdManager.V1;

    public sealed partial class GeneratedNetworkServiceClientSnippets
    {
        public void GetNetwork()
        {
            // Create client
            NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
            // Initialize request argument(s)
            string name = "networks/[NETWORK_CODE]";
            // Make the request
            Network response = networkServiceClient.GetNetwork(name);
        }
    }

برای نمونه‌هایی از روش‌ها و منابع دیگر، به مخزن GitHub googleapis/google-cloud-dotnet مراجعه کنید.

رسیدگی به خطاها

همه خطاهای Ad Manager API از نوع Grpc.Core.RpcException در کتابخانه مشتری دات نت هستند.

خطاها شامل یک request_id منحصر به فرد است که می توانید برای کمک در عیب یابی ارائه دهید. مثال زیر وضعیت HTTP، پیام خطا و request_id را استخراج می کند.

using Google.Ads.AdManager.V1;
using Google.Api.Gax.Grpc;
using Google.Rpc;
using Grpc.Core;

try
{
    NetworkServiceClient networkServiceClient = NetworkServiceClient.Create();
    Network network = networkServiceClient.GetNetwork("networks/[NETWORK_CODE]");
}
catch(RpcException e)
{
    // HTTP Status code
    StatusCode statusCode = e.Status.StatusCode;
    // Error message
    string errorMessage = e.Status.Detail;
    // Unique request identifier.
    RequestInfo requestInfo = e.GetStatusDetail<RequestInfo>();
    string requestId = requestInfo?.RequestId ?? "Unexpected null request identifier";
}

نام منابع را بسازید

کتابخانه سرویس گیرنده کلاس های کمکی را برای ساخت نام منابع از شناسه ها فراهم می کند. اینها را می توان مستقیماً به روشهای سرویس منتقل کرد.

//  Represents a resource name in the format:
//  "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);