जवाब का मेटाडेटा

PHP क्लाइंट लाइब्रेरी, डिफ़ॉल्ट रूप से रिस्पॉन्स मेटाडेटा को लॉग करती है. इसमें अनुरोध आईडी भी शामिल होता है. इसके अलावा, क्लाइंट सेवा के तरीकों को कॉल करते समय, वैकल्पिक पैरामीटर withResponseMetadata को true पर सेट करके, प्रोग्राम के हिसाब से रिस्पॉन्स मेटाडेटा पाया जा सकता है.

क्लाइंट सेवा के तरीकों को कॉल करने के बाद, आपको काम के ऑब्जेक्ट (जैसे, सेवा क्लाइंट या स्ट्रीम) से GoogleAdsResponseMetadata इंस्टेंस मिल सकता है. यह आपके कॉल करने के तरीके पर निर्भर करता है. यह ऑब्जेक्ट getMetadata() और getRequestId() उपलब्ध कराता है. ये क्रमशः पूरा रिस्पॉन्स मेटाडेटा कलेक्शन और एपीआई कॉल का अनुरोध आईडी दिखाते हैं. getMetadata() वाला तरीका, यहां दिए गए आउटपुट की तरह स्ट्रक्चर्ड कलेक्शन दिखाता है:

object(Google\Ads\GoogleAds\Lib\V26\GoogleAdsResponseMetadata)#51 (1) {
  ["metadata":"Google\Ads\GoogleAds\Lib\V26\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 ऑब्जेक्ट पाने के लिए, स्ट्रीम पर बार-बार कॉल करने के बाद, stream ऑब्जेक्ट पर getResponseMetadata() को कॉल करें:

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

foreach ($stream->iterateAllElements() as $googleAdsRow) {
    // Process each row...
}

// Outputs the request ID.
echo $stream->getResponseMetadata()?->getRequestId() . PHP_EOL;

$stream->getResponseMetadata(), GoogleAdsResponseMetadata ऑब्जेक्ट दिखाता है.

खोजने और बदलाव करने के तरीके

यूनरी कॉल के लिए GoogleAdsResponseMetadata ऑब्जेक्ट पाने के लिए, सर्विस क्लाइंट ऑब्जेक्ट पर getResponseMetadata() को कॉल करें:

// Retrieves objects.
$response = $googleAdsServiceClient->search(
    SearchGoogleAdsRequest::build($customerId, $query),
    ['withResponseMetadata' => true]
);

// Outputs the request ID.
echo $googleAdsServiceClient->getResponseMetadata()?->getRequestId() . PHP_EOL;

// Mutates campaigns.
$response = $campaignServiceClient->mutateCampaigns(
    MutateCampaignsRequest::build($customerId, $campaignOperations),
    ['withResponseMetadata' => true]
);

// Outputs the request ID.
echo $campaignServiceClient->getResponseMetadata()?->getRequestId() . PHP_EOL;

$campaignServiceClient->getResponseMetadata() और $googleAdsServiceClient->getResponseMetadata(), दोनों ही GoogleAdsResponseMetadata ऑब्जेक्ट दिखाते हैं.