Node.js

توفّر Google مكتبة برامج Node.js للتفاعل مع Ad Manager API.

المتطلبات الأساسية

لاستخدام مكتبة عميل Node.js، يجب أن يكون Node.js مثبّتًا. لمزيد من المعلومات، يُرجى الاطّلاع على تنزيل Node.js®‎.

تثبيت مكتبة البرامج

للبدء، أنشئ مشروعًا جديدًا في بيئة التطوير المتكاملة التي تختارها أو أضِف التبعية إلى مشروع حالي. تنشر Google عناصر مكتبة العميل في npm باسم @google-ads/admanager.

package.json

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

سطر الأوامر

npm install @google-ads/admanager

ضبط بيانات الاعتماد

للمصادقة، تستخدم مكتبة عميل Node.js بروتوكول OAuth2 وبيانات الاعتماد التلقائية للتطبيق (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. يمكنك تفعيل تسجيل الدخول لجميع Google APIs من خلال ضبط قيمة المتغيّر على all. للاطّلاع على جميع أسماء حِزم مكتبات العملاء المتاحة، يُرجى مراجعة مكتبات عملاء 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';

‫Linux أو 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

Windows

# 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 فريدة يمكنك تقديمها إلى فريق دعم واجهة برمجة التطبيقات. للحصول على المساعدة في تحديد المشاكل وحلّها، يُرجى الاطّلاع على التواصل مع فريق دعم واجهة برمجة التطبيقات. يستخرج المثال التالي قيمة 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;
  }
}