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.4.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 API من خلال ضبط قيمة المتغيّر على 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;
  }
}