Ad Manager API-এর সাথে ইন্টার্যাক্ট করার জন্য Google একটি .NET ক্লায়েন্ট লাইব্রেরি প্রদান করে। আমরা NuGet-এর সাথে ক্লায়েন্ট লাইব্রেরি ব্যবহার করার সাজেশন দিই।
শুরু করতে, আপনার পছন্দের IDE-তে একটি নতুন প্রোজেক্ট তৈরি করুন অথবা আগে থেকে থাকা প্রোজেক্টে
ডিপেন্ডেন্সি যোগ করুন। Google, NuGet রিপোজিটরিতে
Google.Ads.AdManager.V1 হিসেবে
ক্লায়েন্ট লাইব্রেরি আর্টিফ্যাক্ট প্রকাশ করে।
প্যাকেজ রেফারেন্স
<!-- 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
ক্রেডেনশিয়াল কনফিগার করুন
.NET ক্লায়েন্ট লাইব্রেরি যাচাইকরণের জন্য OAuth2 এবং অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়াল (ADC) ব্যবহার করে।
ADC নিম্নলিখিত লোকেশনে এই ক্রমে ক্রেডেনশিয়াল খোঁজে:
GOOGLE_APPLICATION_CREDENTIALSএনভায়রনমেন্ট ভেরিয়েবল।- Google Cloud CLI (gcloud CLI)-এর মাধ্যমে ব্যবহারকারীর ক্রেডেনশিয়াল সেট-আপ করা হয়েছে।
- 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-এর সব সমস্যা .NET ক্লায়েন্ট লাইব্রেরিতে 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);
প্রক্সি সেটিংস কনফিগার করুন
.NET ক্লায়েন্ট লাইব্রেরি HttpClient.DefaultProxy প্রপার্টি মেনে চলে,
যার মধ্যে এনভায়রনমেন্ট ভেরিয়েবল HTTP_PROXY ও
HTTPS_PROXY থেকে প্রক্সি সেট করাও অন্তর্ভুক্ত। আরও জানতে,
HttpClient.DefaultProxy প্রপার্টি দেখুন।