تسجّل مكتبة برامج 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 لطلب بث، يمكنك استدعاء
getResponseMetadata() في عنصر stream بعد التكرار على
البث:
$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.