מטא-נתונים של תשובות

כברירת מחדל, ספריית הלקוח של PHP מתעדת את המטא-נתונים של התגובה, כולל מזהה הבקשה. לחלופין, אפשר לקבל את המטא-נתונים של התגובה באופן פרוגרמטי כשקוראים לשיטות של שירות הלקוח, על ידי הגדרת הפרמטר האופציונלי withResponseMetadata לערך true.

אחרי שמפעילים שיטות של שירות לקוח, אפשר לקבל את GoogleAdsResponseMetadata מאובייקט רלוונטי, כמו לקוח שירות או שידור, בהתאם לשיטה שמפעילים. האובייקט הזה מכיל את getMetadata() ו-getRequestId(), שמחזירים את המטא-נתונים של התשובה ואת מזהה הבקשה של קריאת ה-API, בהתאמה. השיטה getMetadata() מחזירה מערך שנראה כך:

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

השיטה getRequestId() מפשטת את תהליך החילוץ של מזהה הבקשה ממערך המטא-נתונים, ומונעת את הצורך לנתח אותו באופן ידני.

בקטעים הבאים מוסבר איך לאחזר את GoogleAdsResponseMetadata לכל שיטה.

SearchStream

כדי לקבל אובייקט מסוג GoogleAdsResponseMetadata, צריך להפעיל את getResponseMetadata() על האובייקט stream:

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

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

$stream->getResponseMetadata() הוא אובייקט של GoogleAdsResponseMetadata.

חיפוש ושיטות טרנספורמציה אחרות

כדי לקבל אובייקט מסוג GoogleAdsResponseMetadata, צריך להפעיל את getResponseMetadata() על האובייקט 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() ו-$googleAdsServiceClient->getResponseMetadata() הם אובייקט של GoogleAdsResponseMetadata.