উত্তরের মেটাডেটা

PHP ক্লায়েন্ট লাইব্রেরি ডিফল্ট হিসেবে অনুরোধ আইডি সহ রেসপন্স মেটাডেটা লগ করে। বিকল্প হিসেবে, আপনি ঐচ্ছিক প্যারামিটার withResponseMetadata-কে true-এ সেট করে ক্লায়েন্ট সার্ভিস মেথড কল করার সময় প্রোগ্রাম্যাটিক্যালি রেসপন্স মেটাডেটা পেতে পারেন।

আপনি ক্লায়েন্ট পরিষেবা মেথড কল করার পরে, আপনি যে মেথড কল করেছেন তার উপর নির্ভর করে প্রাসঙ্গিক অবজেক্ট (যেমন, পরিষেবা ক্লায়েন্ট বা স্ট্রিম) থেকে একটি GoogleAdsResponseMetadata ইনস্ট্যান্স পেতে পারেন। এই অবজেক্ট getMetadata() এবং getRequestId() প্রদান করে, যা যথাক্রমে সম্পূর্ণ রেসপন্স মেটাডেটা অ্যারে এবং API কলের অনুরোধ আইডি প্রদান করে। 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 অবজেক্ট পেতে, স্ট্রিমের উপর ইটারেট করার পরে স্ট্রিম অবজেক্টে 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 অবজেক্ট রিটার্ন করে।