Google 提供 .NET 用戶端程式庫,可與 Ad Manager API 互動。 建議您搭配 NuGet 使用用戶端程式庫。
如要開始使用,請在所選 IDE 中建立新專案,或將依附元件新增至現有專案。Google 會將用戶端程式庫構件發布至 NuGet 存放區,做為 Google.Ads.AdManager.V1。
套件參考資料
<!-- 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
設定憑證
.NET 用戶端程式庫會使用 OAuth2 和應用程式預設憑證 (ADC) 進行驗證。
ADC 會依序在下列位置搜尋憑證:
GOOGLE_APPLICATION_CREDENTIALS環境變數。- 透過 Google Cloud CLI (gcloud CLI) 設定的使用者憑證。
- 在 Google Cloud 上執行時,附加至 Google Cloud 資源的服務帳戶。
如要建立及設定 ADC 憑證,請參閱「驗證」。
發出第一項要求
每項服務都有一個 ServiceClient 物件,其中包含每個 REST 方法的同步和非同步方法。下列範例會同步讀取 Network。所有實體都會以資源名稱識別,其中包含實體的類型和數字 ID。
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。
處理錯誤
在 .NET 用戶端程式庫中,所有 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";
}
建構資源名稱
用戶端程式庫提供輔助類別,可從 ID 建構資源名稱。這些項目可直接傳遞至服務方法。
// Represents a resource name in the format:
// "networks/{networkCode}/orders/{orderId}"
OrderName name = OrderName.FromNetworkCodeOrder("123", "456");
Order response = orderServiceClient.GetOrder(name);
指定 Proxy 設定
.NET 用戶端程式庫會遵守 HttpClient.DefaultProxy 屬性,包括從環境變數 HTTP_PROXY 和 HTTPS_PROXY 設定 Proxy。詳情請參閱 HttpClient.DefaultProxy 屬性。