Metadatos de respuesta

La biblioteca cliente de PHP registra la respuesta. metadatos, incluido un ID de solicitud, de forma predeterminada. Como alternativa, puedes obtener el metadatos de respuesta de forma programática cuando se llama a los métodos de servicio del cliente mediante la configuración del parámetro opcional withResponseMetadata en true

Luego de llamar a los métodos de servicio al cliente, puedes obtener GoogleAdsResponseMetadata: de un objeto relevante, como un cliente de servicio o una transmisión, según el método que llames. Este objeto contiene getMetadata() y getRequestId(), que devuelven metadatos de respuesta y el ID de solicitud de la llamada a la API, respectivamente. El método getMetadata() muestra un array con el siguiente aspecto:

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"
    }
    ...
  }
}

El método getRequestId() simplifica el proceso de extracción del ID de solicitud. del array de metadatos, lo que te ahorra el esfuerzo de analizarlo manualmente.

En las siguientes secciones, se explica cómo recuperar GoogleAdsResponseMetadata para cada método.

SearchStream

Para obtener un objeto de GoogleAdsResponseMetadata, llama a getResponseMetadata(). En el objeto stream, haz lo siguiente:

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

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

El $stream->getResponseMetadata() es un objeto de GoogleAdsResponseMetadata

Búsqueda y otros métodos de modificación

Para obtener un objeto de GoogleAdsResponseMetadata, llama a getResponseMetadata(). en el objeto 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;

Los operadores $campaignServiceClient->getResponseMetadata() y $googleAdsServiceClient->getResponseMetadata() son un objeto de GoogleAdsResponseMetadata