Node.js

Google fornisce una libreria client Node.js per interagire con l'API Ad Manager.

Prerequisito

Per utilizzare la libreria client Node.js, devi aver installato Node.js. Per ulteriori informazioni, vedi Scaricare Node.js®.

installa la libreria client

Per iniziare, crea un nuovo progetto nell'IDE che preferisci o aggiungi la dipendenza a un progetto esistente. Google pubblica gli artefatti della libreria client su npm come @google-ads/admanager.

package.json

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

Riga di comando

npm install @google-ads/admanager

Configurare le credenziali

Per l'autenticazione, la libreria client Node.js utilizza OAuth2 e le Credenziali predefinite dell'applicazione (ADC). Per creare e configurare le credenziali ADC, consulta la sezione Autenticazione.

Effettua la tua prima richiesta

Ogni servizio ha un oggetto ServiceClient con metodi per ogni metodo REST. Per esempi di ciascun metodo, consulta il repository GitHub googleapis/google-cloud-node. L'esempio seguente legge un oggetto 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();

Registrare le richieste e le risposte HTTP

La libreria client Node.js supporta la registrazione delle richieste e delle risposte HTTP. Per impostazione predefinita, la libreria client disattiva la registrazione.

Per attivare la registrazione predefinita nell'output standard, imposta la variabile di ambiente GOOGLE_SDK_NODE_LOGGING su un elenco separato da virgole di nomi di pacchetti API di Google. Puoi attivare la registrazione per tutte le API di Google impostando il valore della variabile su all. Per tutti i nomi dei pacchetti delle librerie client disponibili, consulta Librerie client 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 o 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

In alternativa, puoi modificare il backend di logging o agganciare gli eventi di log. Per saperne di più, consulta Strumenti di logging di Google.

Gestisci gli errori

Nella libreria client Node.js, tutti gli errori dell'API Ad Manager generano un'eccezione di tipo GaxiosError.

Gli errori dell'API Ad Manager includono un messaggio di errore e un valore requestId univoco che puoi fornire al team di assistenza API. Per assistenza con la risoluzione dei problemi, consulta Contattare l'assistenza API. L'esempio seguente estrae il valore requestId e il messaggio di errore:

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;
  }
}