Node.js

Google یک کتابخانه مشتری Node.js برای تعامل با Ad Manager API فراهم می کند.

پیش نیاز

برای استفاده از کتابخانه مشتری Node.js، باید Node.js را نصب کرده باشید. برای اطلاعات بیشتر، دانلود Node.js® را ببینید.

کتابخانه مشتری را نصب کنید

برای شروع، یک پروژه جدید در IDE مورد نظر خود ایجاد کنید یا وابستگی را به پروژه موجود اضافه کنید. Google مصنوعات کتابخانه مشتری را با نام @google-ads/admanager در npm منتشر می‌کند.

package.json

"dependencies": {
  "@google-ads/admanager": "^0.4.0"
}

خط فرمان

npm install @google-ads/admanager

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

برای احراز هویت، کتابخانه مشتری Node.js از OAuth2 و Application Default Credentials (ADC) استفاده می کند. برای ایجاد و پیکربندی اعتبار ADC خود، به احراز هویت مراجعه کنید.

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

هر سرویس یک شی ServiceClient با متدهایی برای هر متد REST دارد. برای مثال‌هایی از هر روش، به مخزن GitHub googleapis/google-cloud-node مراجعه کنید. مثال زیر یک شی Network را می خواند:

// Resource name of the Network
const name = 'networks/NETWORK_CODE'

// Imports the Admanager library
const {NetworkServiceClient} = require('@google-ads/admanager').v1;

// Instantiates a client
const admanagerClient = new NetworkServiceClient();

async function callGetNetwork() {
  // Construct request
  const request = {
    name,
  };

  // Run request
  const response = await admanagerClient.getNetwork(request);
  console.log(response);
}

callGetNetwork();

درخواست ها و پاسخ های HTTP را ثبت کنید

کتابخانه مشتری Node.js از ثبت درخواست ها و پاسخ های HTTP پشتیبانی می کند. به‌طور پیش‌فرض، کتابخانه سرویس گیرنده ورود به سیستم را غیرفعال می‌کند.

برای فعال کردن ورود پیش‌فرض به خروجی استاندارد، متغیر محیطی GOOGLE_SDK_NODE_LOGGING روی فهرستی از نام‌های بسته Google API جدا شده با کاما تنظیم کنید. می‌توانید با تنظیم مقدار متغیر روی all ، ورود به سیستم را برای همه APIهای Google فعال کنید. برای همه نام‌های بسته کتابخانه مشتری موجود، به کتابخانه‌های سرویس گیرنده Google Cloud Node.js مراجعه کنید

Node.js

// Enable logging for the Google Ad Manager API
process.env.GOOGLE_SDK_NODE_LOGGING = 'admanager';

// Enable logging for the Google Ad Manager and pubsub APIs.
process.env.GOOGLE_SDK_NODE_LOGGING = 'admanager,pubsub';

// Enable logging for all Google APIs
process.env.GOOGLE_SDK_NODE_LOGGING = 'all';

لینوکس یا macOS

# Enable logging for the Google Ad Manager API.
export GOOGLE_SDK_NODE_LOGGING=admanager

# Enable logging for the Google Ad Manager and pubsub APIs.
export GOOGLE_SDK_NODE_LOGGING=admanager,pubsub

# Enable logging for all Google APIs
export GOOGLE_SDK_NODE_LOGGING=all

ویندوز

# Enable logging for the Google Ad Manager API.
set GOOGLE_SDK_NODE_LOGGING=admanager

# Enable logging for the Google Ad Manager and pubsub APIs.
set GOOGLE_SDK_NODE_LOGGING=admanager,pubsub

# Enable logging for all Google APIs
set GOOGLE_SDK_NODE_LOGGING=all

از طرف دیگر، می‌توانید باطن ورود به سیستم یا رویدادهای ثبت قلاب را تغییر دهید. برای اطلاعات بیشتر، به ابزارهای ثبت گزارش Google مراجعه کنید.

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

در کتابخانه مشتری Node.js، همه خطاهای Ad Manager API استثنایی از نوع GaxiosError ایجاد می‌کنند.

خطاهای Ad Manager API شامل یک پیام خطا و یک مقدار requestId منحصربه‌فرد است که می‌توانید به تیم پشتیبانی API ارائه دهید. برای راهنمایی در مورد عیب یابی، به تماس با پشتیبانی API مراجعه کنید. مثال زیر مقدار requestId و پیام خطا را استخراج می کند:

const admanagerClient = new NetworkServiceClient();
try {
  const network = admanagerClient.getNetwork(
    { name: 'networks/NETWORK_CODE' }
  );
  console.log(network);
} catch(e) {
  if (e instanceof GaxiosError) {
    // Load the error
    const apiError = JSON.parse(e.message).error;
    const requestInfoType = 'type.googleapis.com/google.rpc.RequestInfo';
    const requestInfo = apiError.details.find(detail => detail['@type'] === requestInfoType);
    console.error(apiError.status + ' - ' + apiError.message);
    console.error('RequestId: ' + requestInfo.requestId);
  } else {
    throw e;
  }
}