Метаданные ответа

Клиентская библиотека PHP по умолчанию регистрирует метаданные ответа, включая идентификатор запроса. Кроме того, вы можете получить метаданные ответа программным путем при вызове методов службы клиента, установив для необязательного параметра withResponseMetadata значение true .

После вызова методов службы клиента вы можете получить GoogleAdsResponseMetadata из соответствующего объекта, например клиента службы или потока, в соответствии с вызываемым вами методом. Этот объект содержит getMetadata() и getRequestId() , которые возвращают метаданные ответа и идентификатор запроса вызова API соответственно. Метод getMetadata() возвращает массив, который выглядит следующим образом:

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

Метод getRequestId() упрощает процесс извлечения идентификатора запроса из массива метаданных, избавляя вас от необходимости его анализа вручную.

В следующих разделах объясняется, как получить метаданные GoogleAdsResponseMetadata для каждого метода.

Поисковый поток

Чтобы получить объект GoogleAdsResponseMetadata , вызовите getResponseMetadata() для объекта потока :

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

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

$stream->getResponseMetadata() является объектом GoogleAdsResponseMetadata .

Поиск и другие методы мутации

Чтобы получить объект GoogleAdsResponseMetadata , вызовите getResponseMetadata() для клиентского объекта:

// 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() и $googleAdsServiceClient->getResponseMetadata() являются объектами GoogleAdsResponseMetadata .