Metadati risposta

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

Dopo aver chiamato i metodi del servizio client, puoi ottenere GoogleAdsResponseMetadata, da un oggetto pertinente, come un client di servizio o uno stream, in base il metodo che chiami. 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\V17\GoogleAdsResponseMetadata)#51 (1) {
  ["metadata":"Google\Ads\GoogleAds\Lib\V17\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, evitando di doverli analizzare manualmente.

Le sezioni seguenti spiegano come recuperare GoogleAdsResponseMetadata per ciascun metodo.

SearchStream

Per ottenere un oggetto di 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 GoogleAdsResponseMetadata.

Ricerca e altri metodi di modifica

Per ottenere un oggetto di 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;

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