الانتقال بين النتائج

تتيح GoogleAdsService.Search نقل الصفحات من خلال تحديد page_size في طلبك. يؤدي ذلك إلى تقسيم مجموعة نتائج طلب البحث إلى ردود متعددة، يحتوي كل منها على ما يصل إلى page_size من العناصر. إذا لم يتم تحديد page_size، سيتم ضبطه تلقائيًا على الحدّ الأقصى وهو 10,000 صف.

كمثال، بالنسبة للاستعلام التالي:

SELECT
  ad_group.id,
  ad_group_criterion.type,
  ad_group_criterion.criterion_id,
  ad_group_criterion.keyword.text,
  ad_group_criterion.keyword.match_type
FROM ad_group_criterion
WHERE ad_group_criterion.type = KEYWORD

إذا كان حسابك يتضمّن 50,000 كلمة رئيسية وتم ضبط page_size على 1,000، ستحتوي مجموعة النتائج على 1,000 عنصر GoogleAdsRow في الاستجابة الأولى، إلى جانب next_page_token.

لاسترداد الألف صف التالي، أرسِل الطلب مرة أخرى بحجم الصفحة نفسه، مع تعديل page_token الخاص بالطلب إلى next_page_token الخاص بالاستجابة. ويمكن أن تختلف قيمة page_size في الطلبات اللاحقة في كل مرة. يُرجى العِلم أنّ next_page_token لا تتم تعبئته في الاستجابة التي تحتوي على آخر دفعة من الصفوف.

تعالج مكتبات العملاء لدينا عملية التقسيم تلقائيًا. ما عليك سوى التكرار خلال صفوف الاستجابة. عندما يتم عرض جميع الصفوف في الصفحة الحالية، تجلب مكتبة العملاء صفحة جديدة من الصفوف تلقائيًا نيابةً عنك حتى يتم استرداد مجموعة البيانات بالكامل. إذا كنت تستخدم REST بدلاً من gRPC، فيجب عليك تقديم طلب صريح لكل صفحة جديدة.

تخزّن واجهة برمجة تطبيقات "إعلانات Google" مؤقتًا مجموعة البيانات بالكامل، بحيث تكون الطلبات اللاحقة أسرع من الطلب الأول. استنادًا إلى حالة الاستخدام، يمكنك ضبط page_size على أي قيمة تتراوح بين 1 و10,000. بشكل عام، لتحقيق أداء إجمالي أسرع، استخدِم رمز page_size أكبر لإجراء عدد أقل من جولات البيانات ذهابًا وإيابًا.

يجب أن يظل طلب البحث كما هو تمامًا في الطلبات اللاحقة للاستفادة من البيانات المخزّنة مؤقتًا، ولن يتم احتساب الطلبات ضمن حصتك، لا سيّما الوصول الأساسي. إذا اختلف طلب البحث وتم إرساله مع الرمز المميز نفسه للصفحة، يتم عرض خطأ.