תוצאות בחלוקה לדפים

במאמר הזה מוסבר איך ספריות וכלים שונים של Cloud Storage מחלקים את הצגת התוצאות לעמודים. העימוד נדרש כשמציגים רשימה הכוללת מספר גדול של אובייקטים או קטגוריות.

המסוף

העימוד של רשימות של קטגוריות ואובייקטים בדפים Buckets ו-Bucket details במסוף Google Cloud הוא אוטומטי.


כניסה לדף Buckets

שורת הפקודה

העימוד של רשימות של קטגוריות ואובייקטים ב-Google Cloud CLI הוא אוטומטי.

ספריות לקוח

C++‎

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן השימוש באיטרטור הזה זמינה במשאבי העזרה של C++‎ ל-ListObjects().

C#‎

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן השימוש באיטרטור הזה מופיעה במסמכי העזרה של C#‎ ל-ListObjects().

Go

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן שבו משתמשים באיטרטור הזה מופיעה במסמכי העזרה של Go ל-Bucket.Objects.

Java

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר אסימון דף. דוגמה לאופן השימוש הזה מופיעה במסמכי העזרה של Java.

Node.js

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן השימוש באיטרטור הזה זמינה במסמכי העזרה של Node.js ל-getFiles().

PHP

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן השימוש באיטרטור הזה זמינה במסמכי העזרה של PHP ל-Objects.

Python

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן השימוש באיטרטור הזה מופיעה במסמכי העזרה של Python לאיטרטורים של דפים.

Ruby

החלוקה לדפים בספריות לקוח מתבצעת כברירת מחדל. כשמפעילים פונקציה שתומכת בעימוד, בתשובה מוחזר איטרטור. דוגמה לאופן השימוש באיטרטור הזה מופיעה במסמכי העזרה של Ruby ל-Google::Cloud::Storage::File::List.

‫API בארכיטקטורת REST

‫API בפורמט JSON

אם הרשימה לא מוצגת בשלמותה כשמפעילים פונקציה שתומכת בעימוד, מקבלים בתשובה את אסימון ההמשך nextPageToken. הערך nextPageToken מייצג את התוצאה האחרונה שהתקבלה. כשמכניסים את הערך של nextPageToken לפרמטר pageToken של בקשת ההמשך, מקבלים את דף התוצאות הבא, החל מהתוצאה האחרונה.

לדוגמה, נניח שהבקשה שלכם לרישום אובייקטים בקטגוריה בשם my-bucket מכילה nextPageToken בתגובה:

{
  "kind": "storage#objects",
  "nextPageToken": "CgtzaGliYS0yLmpwZw==",
  "items": [
    {
      OBJECT_1_METADATA
    },
    {
      OBJECT_2_METADATA
    },
    …
  ]
}

בקשת ה-HTTP שבה תשתמשו כדי להמשיך להציג רשימה של אובייקטים ב-my-bucket תהיה הבקשה הבאה:

GET https://storage.googleapis.com/storage/v1/b/my-bucket/o?pageToken=CgtzaGliYS0yLmpwZw==

למידע נוסף על חלוקה של תוצאות לדפים, עיינו במסמכי העזרה של JSON ל-Objects: list או ל-Buckets: list.

‫API בפורמט XML

אם הרשימה לא מוצגת בשלמותה כשמפעילים פונקציה שתומכת בעימוד, מקבלים בתשובה את אסימון ההמשך NextContinuationToken. הערך NextContinuationToken מייצג את התוצאה האחרונה שהתקבלה. כשמכניסים את הערך של NextContinuationToken לפרמטר continuation-token של בקשת ההמשך, מקבלים את דף התוצאות הבא, החל מהתוצאה האחרונה.

לדוגמה, נניח שהבקשה שלכם לרישום אובייקטים בקטגוריה בשם my-bucket מכילה NextContinuationToken בתגובה:

<?xml version='1.0' encoding='UTF-8'?>
<ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'>
  <Name>my-bucket</Name>
  <NextContinuationToken>CgtzaGliYS0yLmpwZw==</NextContinuationToken>
  <KeyCount>2</KeyCount>
  <MaxKeys>2</MaxKeys>
  <IsTruncated>true</IsTruncated>
  <Contents>
    ...
  </Contents>
  ...
</ListBucketResult>

הערה: list-type צריך להיות 2 כדי לקבל NextContinuationToken כשמציגים רשימה של אובייקטים.

בקשת ה-HTTP שבה תשתמשו כדי להמשיך להציג רשימה של אובייקטים ב-my-bucket תכלול את הפרטים הבאים:

GET /?continuation-token=CgtzaGliYS0yLmpwZw==&list-type=2 HTTP/1.1
  Host: my-bucket.storage.googleapis.com

להוראות מפורטות יותר לגבי חלוקה לדפים של תוצאות מקטגוריה, תוכלו לעיין במסמכי העזרה של XML בנושא List Objects.

השלבים הבאים