Metadati risposta

Per impostazione predefinita, la libreria client PHP registra i metadati della risposta, incluso un ID richiesta. In alternativa, puoi ottenere i metadati della risposta in modo programmatico quando chiami i metodi di servizio client impostando il parametro facoltativo withResponseMetadata su true.

Dopo aver chiamato i metodi di servizio client, puoi ottenere GoogleAdsResponseMetadata da un oggetto pertinente, come un client di servizio o uno stream, in base al metodo chiamato. Questo oggetto contiene getMetadata() e getRequestId(), che restituiscono rispettivamente i metadati della risposta e l'ID richiesta della chiamata API. Il metodo getMetadata() restituisce un array simile al seguente:

object(Google\Ads\GoogleAds\Lib\V19\GoogleAdsResponseMetadata)#51 (1) {
  ["metadata":"Google\Ads\GoogleAds\Lib\V19\GoogleAdsResponseMetadata":private]=>
  array(17) {
    ["content-disposition"]=>
    array(1) {
      [0]=>
      string(10) "attachment"
    }
    ["request-id"]=>
    array(1) {
      [0]=>
      string(22) "REQUEST_ID"
    }
    ...
  }
}

Il metodo getRequestId() semplifica il processo di estrazione dell'ID richiesta dall'array di metadati, evitandoti di dover eseguire l'analisi manuale.

Le sezioni seguenti spiegano come recuperare GoogleAdsResponseMetadata per ciascun metodo.

SearchStream

Per ottenere un oggetto GoogleAdsResponseMetadata, chiama getResponseMetadata() sull'oggetto stream:

$stream = $googleAdsServiceClient->searchStream(
    SearchGoogleAdsStreamRequest::build($customerId, $query),
    ['withResponseMetadata' => true]
);

// Prints the request ID.
print $stream->getResponseMetadata()->getRequestId() . PHP_EOL;

$stream->getResponseMetadata() è un oggetto di GoogleAdsResponseMetadata.

Metodi di ricerca e altri metodi di mutazione

Per ottenere un oggetto GoogleAdsResponseMetadata, chiama getResponseMetadata() sull'oggetto client:

// Retrieves objects.
$response = $googleAdsServiceClient->search(
    SearchGoogleAdsRequest::build($customerId, $query),
    ['withResponseMetadata' => true]
);

// Prints the request ID.
print $googleAdsServiceClient->getResponseMetadata()->getRequestId() . PHP_EOL;

// Mutates campaigns.
$response = $campaignServiceClient->mutateCampaigns(
    MutateCampaignsRequest::build($customerId, $campaignOperations),
    ['withResponseMetadata' => true]
);

// Prints the request ID.
print $campaignServiceClient->getResponseMetadata()->getRequestId() . PHP_EOL;

$campaignServiceClient->getResponseMetadata() e $googleAdsServiceClient->getResponseMetadata() sono un oggetto di GoogleAdsResponseMetadata.