Google cung cấp thư viện ứng dụng .NET để tương tác với API Ad Manager. Bạn nên sử dụng thư viện ứng dụng với NuGet.
Để bắt đầu, hãy tạo một dự án mới trong IDE mà bạn chọn hoặc thêm phần phụ thuộc vào một dự án hiện có. Google phát hành các cấu phần phần mềm của thư viện ứng dụng lên kho lưu trữ NuGet dưới dạng Google.Ads.AdManager.V1.
Tài liệu tham khảo về gói
<!-- MyProject.csproj -->
<PackageReference Include="Google.Ads.AdManager.V1" Version="1.0.0-beta13" />
.NET CLI
dotnet add package Google.Ads.AdManager.V1 --version 1.0.0-beta13
Định cấu hình thông tin đăng nhập
Thư viện ứng dụng .NET sử dụng OAuth2 và Thông tin xác thực mặc định của ứng dụng (ADC) để xác thực.
ADC tìm thông tin xác thực theo thứ tự ở các vị trí sau:
- biến môi trường
GOOGLE_APPLICATION_CREDENTIALS. - Thông tin đăng nhập của người dùng được thiết lập thông qua Giao diện dòng lệnh (CLI) của Google Cloud (gcloud CLI).
- Khi chạy trên Google Cloud, tài khoản dịch vụ được đính kèm vào tài nguyên Google Cloud.
Để tạo và định cấu hình thông tin xác thực ADC, hãy xem phần Xác thực.
Thực hiện yêu cầu đầu tiên
Mỗi dịch vụ có một đối tượng ServiceClient với cả phương thức đồng bộ và không đồng bộ cho mỗi phương thức REST. Ví dụ sau đây đọc Network một cách đồng bộ. Tất cả các thực thể đều được xác định bằng một tên tài nguyên bao gồm loại và giá trị nhận dạng dạng số của thực thể.
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);
}
}
Để biết ví dụ về các phương thức và tài nguyên khác, hãy xem kho lưu trữ GitHub googleapis/google-cloud-dotnet.
Xử lý lỗi
Tất cả lỗi API Ad Manager đều thuộc loại Grpc.Core.RpcException trong thư viện ứng dụng .NET.
Lỗi bao gồm một request_id riêng biệt mà bạn có thể cung cấp cho bộ phận hỗ trợ để được trợ giúp khắc phục sự cố. Ví dụ sau đây trích xuất trạng thái HTTP, thông báo lỗi và 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";
}
Tạo tên tài nguyên
Thư viện ứng dụng cung cấp các lớp trợ giúp để tạo tên tài nguyên từ mã nhận dạng. Bạn có thể truyền trực tiếp các giá trị này vào các phương thức dịch vụ.
// Represents a resource name in the format:
// "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);
Định cấu hình cài đặt proxy
Thư viện ứng dụng .NET tuân thủ thuộc tính HttpClient.DefaultProxy, bao gồm cả việc đặt proxy từ các biến môi trường HTTP_PROXY và HTTPS_PROXY. Để biết thêm thông tin, hãy xem phần
Thuộc tính HttpClient.DefaultProxy.