Metadane odpowiedzi

Biblioteka klienta PHP domyślnie rejestruje metadane odpowiedzi, w tym identyfikator żądania. Możesz też uzyskać metadane odpowiedzi programowo podczas wywoływania metod usługi klienta, ustawiając opcjonalny parametr withResponseMetadata na true.

Po wywołaniu metod obsługi klienta możesz uzyskać wartość GoogleAdsResponseMetadata z odpowiedniego obiektu, takiego jak klient usługi lub strumień, zgodnie z wywoływaną metodą. Obiekt ten zawiera elementy getMetadata() i getRequestId(), które zwracają odpowiednio metadane odpowiedzi i identyfikator żądania wywołania interfejsu API. Metoda getMetadata() zwraca tablicę o takiej postaci:

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

Metoda getRequestId() upraszcza proces wyodrębniania identyfikatora żądania z tablicy metadanych, oszczędzając Ci pracy związanej z ręcznym parsowaniem.

W poniższych sekcjach znajdziesz informacje o tym, jak pobrać GoogleAdsResponseMetadata w przypadku każdej metody.

SearchStream

Aby uzyskać obiekt typu GoogleAdsResponseMetadata, wywołaj funkcję getResponseMetadata() w obiekcie stream:

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

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

Obiekt $stream->getResponseMetadata() jest obiektem typu GoogleAdsResponseMetadata.

Metody wyszukiwania i inne metody zmiany

Aby uzyskać obiekt GoogleAdsResponseMetadata, wywołaj funkcję getResponseMetadata() w obiekcie 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;

Obiekty $campaignServiceClient->getResponseMetadata()$googleAdsServiceClient->getResponseMetadata() są obiektami klasy GoogleAdsResponseMetadata.