التقسيم على صفحات
تتيح ميزة "البحث في المقالات الرئيسية" التقسيم على صفحات لاستيعاب طلبات لقطة كبيرة في عمليات جلب (عمليات سحب) متعددة للصفحات. ستسحب Google نقطة نهاية شريك معيّنة باستخدام معلَمة
maxresults
للحدّ أقصى عدد مسموح به من ServiceProviders في استجابة JSON. سيعمل الشركاء على تعبئة رمز التقسيم على صفحات في الحقل metadata.pagination.nextTokenParam
في استجابة JSON. قيمة هذا الرمز المميز خاصة بالشريك وتُستخدم لإنشاء عنوان URL للصفحة التالية. ويجب عدم ملء الحقل nextTokenParam
للصفحة الأخيرة. ملاحظة: يجب دائمًا تعبئة العنصر metadata.pagination
(كما هو مطلوب في المخطط)، على الرغم من أنّ الصفحة الأخيرة لن تحتوي على الحقل nextTokenParam
.
علاوةً على ذلك، يشير totalCount
إلى إجمالي عدد مقدّمي الخدمة (أو
reviewItems
في حال خلاصة المراجعات) على مستوى جميع الصفحات.
على سبيل المثال، إذا تضمّن الشريك 200 مقدِّم خدمة في اللقطة الكاملة. عندما تبدأ Google نقل الخلاصات باستخدام عنوان URL
http://www.partners.com/feeds/{version}/profile&maxresults=100
يجب أن تعرض الصفحة الأولى أول 100 مزوّد شريك مع metaData
التالية:
"metaData": {
"feedCategory":"SNAPSHOT",
"feedTimestampMicros":1532930955190163,
"apiVersion": "v1",
"pagination": {
"nextTokenParam": "yre7yiesar"
},
"totalCount":200
}
"serviceProviders": {....} // Contains 100 service provider objects.
ستحلّل Google nextTokenParam: "yre7yiesar"
وستبدأ عملية النقل الثانية باستخدام عنوان URL:
http:partners.com/feeds/{version}/profile&nextpagetoken=yre7yiesar&maxresults=100
يجب أن تعرض الصفحة الثانية آخر 100 مقدم خدمة. وبما أنّ الصفحة الثانية
هي أيضًا الصفحة الأخيرة، لن تتم تعبئة nextTokenParam
(metaData
المثال أدناه)، ما يشير إلى نهاية التقسيم على صفحات.
"metaData": {
"feedCategory":"SNAPSHOT",
"feedTimestampMicros":1532930955190164,
"apiVersion": "v1",
"pagination": {},
"totalCount":200
}
"serviceProviders": {....}
ملاحظة: بعد استرجاع جميع الصفحات، يجب أن يكون إجمالي عدد عناصر serviceProviders
(في جميع الصفحات) مساويًا لعدد totalCount
العناصر المُشار إليها في عملية جلب الصفحة الأولى.