הדף הזה מסביר איך ליצור בקשת העלאה שניתן להמשיך בממשקי ה-API בפורמט JSON ובפורמט XML ב-Cloud Storage. הפרוטוקול הזה מאפשר להמשיך את פעולת ההעלאה אחרי שכשל בתקשורת מפריע לזרימת הנתונים.
מידע על שימוש בהעלאות שניתן להמשיך ב-Google Cloud CLI ובספריות לקוח מופיע במאמר איך כלים וממשקי API משתמשים בהעלאות שניתן להמשיך.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לביצוע העלאה שניתן להמשיך, צריך לבקש מהאדמין להקצות לכם אחד מהתפקידים הבאים:
אם ההעלאות כוללות נעילת שמירה של אובייקט, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM 'אדמין של אובייקטים באחסון' (
roles/storage.objectAdmin) בקטגוריה.בכל מקרה אחר, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM 'משתמש באובייקט אחסון' (
roles/storage.objectUser) בקטגוריה.
התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות להעלאת אובייקט לקטגוריה במקרים הרלוונטיים. כדי לראות את ההרשאות הנדרשות, מרחיבים את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
storage.objects.createstorage.objects.delete- ההרשאה הזו נדרשת רק להעלאות שמחליפות אובייקט קיים.
storage.objects.setRetention- ההרשאה הזו נדרשת רק להעלאות שכוללות נעילת שמירת אובייקט.
אפשר לקבל את ההרשאות האלה גם באמצעות תפקידים אחרים שהוגדרו מראש או תפקידים בהתאמה אישית.
במאמר הגדרה וניהול של מדיניות IAM בקטגוריות מוסבר איך מקצים תפקידים בקטגוריות.
התחלת סשן העלאה שניתן להמשיך
כדי להתחיל סשן העלאה שניתן להמשיך:
API ל-JSON
התקנה והפעלה של ה-CLI של gcloud, שמאפשרות ליצור אסימון גישה לכותרת
Authorization.אפשר גם ליצור קובץ JSON שמכיל את המטא-נתונים שרוצים להגדיר באובייקט שמעלים. לדוגמה, קובץ ה-JSON הבא מגדיר את המטא-נתונים
contentTypeשל האובייקט שרוצים להעלות ל-image/png:{ "contentType": "image/png" }משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשת אובייקטPOST:curl -i -X POST --data-binary @METADATA_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -H "Content-Length: INITIAL_REQUEST_LENGTH" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=resumable&name=OBJECT_NAME"כאשר:
-
METADATA_LOCATIONהוא הנתיב המקומי לקובץ JSON שמכיל את המטא-נתונים האופציונליים שצוינו בשלב הקודם. אם לא כוללים קובץ מטא-נתונים, צריך לא לכלול זאת, יחד עם--data-binary @והכותרתContent-Type. -
INITIAL_REQUEST_LENGTHהוא מספר הבייטים בגוף הבקשה הראשונית, לדוגמה79. -
BUCKET_NAMEהוא שם הקטגוריה שאליה מעלים את האובייקט. לדוגמה,my-bucket. -
OBJECT_NAMEהוא השם שרוצים לתת לאובייקט, מותאם לקידודי התווים שמתאימים לכתובות URL. לדוגמה,pets/dog.pngיותאם לקידודי התווים שמתאימים לכתובות URL באופן הבא:pets%2Fdog.png. לא חובה לעשות זאת אם כללתםnameבקובץ המטא-נתונים של האובייקט בשלב 2.
אם הפעלתם שיתוף משאבים בין מקורות, צריך לכלול גם את הכותרת
Originבבקשות ההעלאה האלו וגם בבקשות ההעלאה הבאות.כותרות אופציונליות שאפשר להוסיף לבקשה כוללות את
X-Upload-Content-TypeואתX-Upload-Content-Length.אם הפעולה מצליחה, התשובה תכלול קוד סטטוס
200ותיראה בערך כך:HTTP/2 200 content-type: text/plain; charset=utf-8 x-guploader-uploadid: ABgVH8_jqDHM_KOvNAJCx73r9v5fINktk9U-pXana1szCM5803tlJ7CKsRbDxkyYCrfEiNqzcZ6B7DfoDtc-bdzpH-SpVTAMEO9EQV34qG0-0yk location: https://storage.googleapis.com/upload/storage/v1/b/my-bucket/o?uploadType=resumable&name=cat-pic.jpeg&upload_id=ABgVH8_jqDHM_KOvNAJCx73r9v5fINktk9U-pXana1szCM5803tlJ7CKsRbDxkyYCrfEiNqzcZ6B7DfoDtc-bdzpH-SpVTAMEO9EQV34qG0-0yk date: Mon, 07 Jul 2025 14:57:21 GMT vary: Origin vary: X-Origin cache-control: no-cache, no-store, max-age=0, must-revalidate expires: Mon, 01 Jan 1990 00:00:00 GMT pragma: no-cache content-length: 0 server: UploadServer alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
-
שומרים את ה-URI של הסשן שניתן להמשיך, שמופיע בכותרת
locationשל התשובה לבקשת האובייקטPOST.ה-URI הזה משמש בבקשות הבאות להעלאת נתוני האובייקט.
API בפורמט XML
התקנה והפעלה של ה-CLI של gcloud, שמאפשרות ליצור אסימון גישה לכותרת
Authorization.משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML באמצעות בקשת אובייקטPOSTעם גוף ריק:curl -i -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Length: 0" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ -H "x-goog-resumable: start" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"כאשר:
OBJECT_CONTENT_TYPEהוא סוג התוכן של האובייקט. לדוגמה,image/png. אם לא מציינים סוג תוכן, מערכת Cloud Storage מגדירה את המטא-נתוניםContent-Typeשל האובייקט להיותapplication/octet-stream.-
BUCKET_NAMEהוא שם הקטגוריה שאליה מעלים את האובייקט. לדוגמה,my-bucket. OBJECT_NAMEהוא השם בקידוד כתובת ה-URL שרוצים לתת לאובייקט. לדוגמה,pets/dog.png, בקידוד כתובת ה-URL כ-pets%2Fdog.png.
אם הפעלתם שיתוף משאבים בין מקורות, צריך לכלול גם את הכותרת
Originבבקשות ההעלאה האלו וגם בבקשות ההעלאה הבאות.אם הפעולה בוצעה בהצלחה, התשובה תכלול הודעת סטטוס
201.שומרים את ה-URI של הסשן שניתן להמשיך, שמופיע בכותרת
locationשל התשובה לבקשת האובייקטPOST.ה-URI הזה משמש בבקשות הבאות להעלאת נתוני האובייקט.
העלאת הנתונים
אחרי שמתחילים העלאה שניתן להמשיך, יש שתי דרכים להעלות את נתוני האובייקט:
- במקטע אחד: בדרך כלל הגישה הזו היא הטובה ביותר, כי היא דורשת פחות בקשות, ולכן הביצועים שלה טובים יותר.
- במספר מקטעים: כדאי להשתמש בגישה הזו אם צריכים להפחית את כמות הנתונים שמועברת בבקשה אחת, למשל כשיש מגבלת זמן קבועה לבקשות נפרדות, או אם לא יודעים מה הגודל הכולל של ההעלאה כשמתחילים אותה.
העלאת מקטע יחיד
כדי להעלות את הנתונים במקטע יחיד:
API בפורמט JSON
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשת אובייקטPUT:curl -i -X PUT --data-binary @OBJECT_LOCATION \ -H "Content-Length: OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
OBJECT_LOCATIONהוא הנתיב המקומי לאובייקט. לדוגמה,Desktop/dog.png. -
OBJECT_SIZEהוא מספר הבייטים באובייקט. לדוגמה,20000000. -
SESSION_URIהוא הערך שהוחזר בכותרתlocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
אפשר גם לכלול כותרות עם הקידומת
X-Goog-Meta-, כדי להוסיף מטא-נתונים בהתאמה אישית בשביל האובייקט כחלק מהבקשה.-
API בפורמט XML
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML באמצעות בקשת אובייקטPUT:curl -i -X PUT --data-binary @OBJECT_LOCATION \ -H "Content-Length: OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
OBJECT_LOCATIONהוא הנתיב המקומי לאובייקט. לדוגמה,Desktop/dog.png. -
OBJECT_SIZEהוא מספר הבייטים באובייקט. לדוגמה,20000000. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
אם ההעלאה תושלם במלואה, מקבלים תשובה מסוג 200 OK או 201 Created עם המטא-נתונים המשויכים למשאב.
אם בקשת ההעלאה הופסקה או אם מקבלים תשובה מסוג 5xx, אפשר להיעזר בהוראות שבקטע המשך של העלאה שהופסקה.
העלאה של מספר מקטעים
כדי להעלות את הנתונים במספר מקטעים:
API בפורמט JSON
יוצרים מקטע נתונים מתוך כלל הנתונים שרוצים להעלות.
גודל המקטע צריך להיות כפולה של 256KiB (256 x 1,024 בייטים), אלא אם הוא המקטע האחרון המשלים את ההעלאה. כשמדובר במקטעים גדולים יותר, בדרך כלל ההעלאה מהירה יותר, אבל חשוב לזכור שיש הבדל בין מהירות לבין שימוש בזיכרון. מומלץ להשתמש ב-8MiB לפחות לגודל המקטעים.
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשת אובייקטPUT:curl -i -X PUT --data-binary @CHUNK_LOCATION \ -H "Content-Length: CHUNK_SIZE" \ -H "Content-Range: bytes CHUNK_FIRST_BYTE-CHUNK_LAST_BYTE/TOTAL_OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
CHUNK_LOCATIONהוא הנתיב המקומי למקטע שאתם מעלים כרגע. -
CHUNK_SIZEהוא מספר הבייטים שמעלים בבקשה הנוכחית. לדוגמה,8388608. -
CHUNK_FIRST_BYTEהוא הבייט ההתחלתי באובייקט הכולל, שמכיל את המקטע שמעלים. -
CHUNK_LAST_BYTEהוא הבייט הסופי באובייקט הכללי שמכיל את המקטע שמעלים. -
TOTAL_OBJECT_SIZEהוא הגודל הכולל של האובייקט שמעלים. אם לא יודעים מה הגודל המלא של האובייקט, אפשר להשתמש ב-*בשביל הערך הזה. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
למשל,
Content-RangeהואContent-Range: bytes 0-8388607/20000000. למידע נוסף על הכותרת הזו, ראוContent-Range.אם הבקשה מצליחה, השרת ישיב עם
308 Resume Incomplete. התשובה מכילה כותרתRange.-
חוזרים על השלבים האלו בשביל כל מקטע נתונים שרוצים להעלות, תוך כדי שימוש בערך העליון שבכותרת
Rangeשל כל תשובה כדי לקבוע מאיפה להתחיל כל מקטע עוקב. אי אפשר להניח שהשרת קיבל את כל הבייטים שנשלחו בכל בקשה נתונה.אם רוצים, בבקשה הסופית של ההעלאה שניתן להמשיך, אפשר לכלול כותרות עם הקידומת
X-Goog-Meta-כדי להוסיף לאובייקט מטא-נתונים בהתאמה אישית.
API בפורמט XML
יוצרים מקטע נתונים מתוך כלל הנתונים שרוצים להעלות.
גודל המקטע צריך להיות כפולה של 256KiB (256 x 1,024 בייטים), אלא אם הוא המקטע האחרון המשלים את ההעלאה. כשמדובר במקטעים גדולים יותר, בדרך כלל ההעלאה מהירה יותר, אבל חשוב לזכור שיש הבדל בין מהירות לבין שימוש בזיכרון. מומלץ להשתמש ב-8MiB לפחות לגודל המקטעים.
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML באמצעות בקשת אובייקטPUT:curl -i -X PUT --data-binary @CHUNK_LOCATION \ -H "Content-Length: CHUNK_SIZE" \ -H "Content-Range: bytes CHUNK_FIRST_BYTE-CHUNK_LAST_BYTE/TOTAL_OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
CHUNK_LOCATIONהוא הנתיב המקומי למקטע שאתם מעלים כרגע. -
CHUNK_SIZEהוא מספר הבייטים שמעלים בבקשה הנוכחית. לדוגמה,8388608. -
CHUNK_FIRST_BYTEהוא הבייט ההתחלתי באובייקט הכולל, שמכיל את המקטע שמעלים. -
CHUNK_LAST_BYTEהוא הבייט הסופי באובייקט הכללי שמכיל את המקטע שמעלים. -
TOTAL_OBJECT_SIZEהוא הגודל הכולל של האובייקט שמעלים. אם לא יודעים מה הגודל המלא של האובייקט, אפשר להשתמש ב-*בשביל הערך הזה. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
למשל,
Content-RangeהואContent-Range: bytes 0-8388607/20000000. למידע נוסף על הכותרת הזו, ראוContent-Range.אם הבקשה מצליחה, השרת ישיב עם
308 Resume Incomplete. התשובה מכילה כותרתRange.-
חוזרים על השלבים האלו בשביל כל מקטע נתונים שרוצים להעלות, תוך כדי שימוש בערך העליון שבכותרת
Rangeשל כל תשובה כדי לקבוע מאיפה להתחיל כל מקטע עוקב. אי אפשר להניח שהשרת קיבל את כל הבייטים שנשלחו בכל בקשה נתונה.
כשההעלאה מסתיימת במלואה, מקבלים את התשובה 200 OK או 201 Created עם כל המטא-נתונים שמשויכים למשאב.
אם אחת מהעלאות המקטעים הופסקה, או אם מקבלים תשובה 5xx צריך לשלוח שוב את המקטע שהופסק בשלמותו אולהמשיך את ההעלאה שהופסקה מהמקום שבו היא הפסיקה.
בדיקת הסטטוס של העלאה שניתן להמשיך
אם ההעלאה שניתן להמשיך הופסקה, או אם לא בטוחים שההעלאה הושלמה, אפשר לבדוק את סטטוס ההעלאה:
API בפורמט JSON
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON באמצעות בקשת אובייקטPUT:curl -i -X PUT \ -H "Content-Length: 0" \ -H "Content-Range: bytes */OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
OBJECT_SIZEהוא המספר הכולל של הבייטים באובייקט. אם לא יודעים מה הגודל המלא של האובייקט, אפשר להשתמש ב-*בשביל הערך הזה. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
API בפורמט XML
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML באמצעות בקשת אובייקטPUT:curl -i -X PUT \ -H "Content-Length: 0" \ -H "Content-Range: bytes */OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
OBJECT_SIZEהוא המספר הכולל של הבייטים באובייקט. אם לא יודעים מה הגודל המלא של האובייקט, אפשר להשתמש ב-*בשביל הערך הזה. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
התשובה 200 OK או 201 Created מציינת שההעלאה הושלמה ולא צריך לבצע פעולה נוספת.
התשובה 308 Resume Incomplete מציינת שצריך להמשיך בהעלאת הנתונים.
- אם עדיין לא נשמרו בייטים ב-Cloud Storage, בתשובה
308אין כותרתRange. במקרה כזה, צריך להתחיל את ההעלאה מההתחלה. - אחרת, התשובה
308כוללת את הכותרתRange, שמציינת אילו בייטים נשמרו עד עכשיו ב-Cloud Storage. משתמשים בערך הזה בשביל המשך העלאה שהופסקה.
המשך העלאה שהופסקה
אם בקשת העלאה הופסקה לפני קבלת תשובה, או אם מקבלים תשובה של 503 או 500, צריך להמשיך את ההעלאה מהמקום שבו היא הופסקה. כדי להמשיך העלאה שהופסקה:
API בפורמט JSON
בודקים את הסטטוס של ההעלאה שניתן להמשיך.
שומרים את הערך העליון של הכותרת
Rangeשמופיעה בתשובה לבדיקת הסטטוס. אם התשובה לא כוללת את הכותרתRange, המשמעות היא שעדיין לא נשמרו בייטים ב-Cloud Storage וצריך לבצע העלאה מההתחלה.צריך לוודא שנתוני האובייקטים שעומדים להעלות מתחילים בבייטים שאחרי הערך העליון בכותרת
Range.אם הבקשה שהופסקה הכילה כותרות עם קידומת
X-Goog-Meta-, צריך לכלול את הכותרות האלו בבקשה כדי להמשיך את ההעלאה.משתמשים ב-
cURLכדי לקרוא ל-API בפורמט JSON עם בקשת אובייקטPUT, שממשיכה מהבייט שאחרי הערך שמופיע בכותרתRange:curl -i -X PUT --data-binary @PARTIAL_OBJECT_LOCATION \ -H "Content-Length: UPLOAD_SIZE_REMAINING" \ -H "Content-Range: bytes NEXT_BYTE-LAST_BYTE/TOTAL_OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
PARTIAL_OBJECT_LOCATIONהוא הנתיב המקומי לחלק הנותר של הנתונים שרוצים להעלות. -
UPLOAD_SIZE_REMAININGהוא מספר הבייטים שמעלים בבקשה הנוכחית. לדוגמה, אם מעלים את שאר האובייקט בגודל כולל של 20,000,000 שהופסק אחרי העלאת הבייטים שבין 0 ל-42, הערך שלUPLOAD_SIZE_REMAININGיהיה19999957. -
NEXT_BYTEהוא המספר השלם הבא אחרי הערך שנשמר בשלב 2. לדוגמה, אם42הוא הערך העליון בשלב 2, הערך שלNEXT_BYTEהוא43. -
LAST_BYTEהוא הבייט הסופי שכלול בבקשתPUTהזו. לדוגמה, כדי לסיים להעלות אובייקט שהגודל הכולל שלו הוא20000000, הערך שלLAST_BYTEהוא19999999. -
TOTAL_OBJECT_SIZEהוא הגודל הכולל של האובייקט שמעלים. לדוגמה,20000000. אם לא יודעים מה הגודל המלא של האובייקט, אפשר להשתמש ב-*בשביל הערך הזה. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
API בפורמט XML
בודקים את הסטטוס של ההעלאה שניתן להמשיך.
שומרים את הערך העליון של הכותרת
Rangeשמופיעה בתשובה לבדיקת הסטטוס. אם התשובה לא כוללת את הכותרתRange, המשמעות היא שעדיין לא נשמרו בייטים ב-Cloud Storage וצריך לבצע העלאה מההתחלה.צריך לוודא שנתוני האובייקטים שעומדים להעלות מתחילים בבייטים שאחרי הערך העליון בכותרת
Range.משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML עם בקשת אובייקטPUT, שממשיכה מהבייט שאחרי הערך שמופיע בכותרתRange:curl -i -X PUT --data-binary @PARTIAL_OBJECT_LOCATION \ -H "Content-Length: UPLOAD_SIZE_REMAINING" \ -H "Content-Range: bytes NEXT_BYTE-LAST_BYTE/TOTAL_OBJECT_SIZE" \ "SESSION_URI"כאשר:
-
PARTIAL_OBJECT_LOCATIONהוא הנתיב המקומי לחלק הנותר של הנתונים שרוצים להעלות. -
UPLOAD_SIZE_REMAININGהוא מספר הבייטים שמעלים בבקשה הנוכחית. לדוגמה, אם מעלים את שאר האובייקט בגודל כולל של 20,000,000 שהופסק אחרי העלאת הבייטים שבין 0 ל-42, הערך שלUPLOAD_SIZE_REMAININGיהיה19999957. -
NEXT_BYTEהוא המספר השלם הבא אחרי הערך שנשמר בשלב 2. לדוגמה, אם42הוא הערך העליון בשלב 2, הערך שלNEXT_BYTEהוא43. -
LAST_BYTEהוא הבייט הסופי שכלול בבקשתPUTהזו. לדוגמה, כדי לסיים להעלות אובייקט שהגודל הכולל שלו הוא20000000, הערך שלLAST_BYTEהוא19999999. -
TOTAL_OBJECT_SIZEהוא הגודל הכולל של האובייקט שמעלים. לדוגמה,20000000. אם לא יודעים מה הגודל המלא של האובייקט, אפשר להשתמש ב-*בשביל הערך הזה. -
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
אפשר להמשיך את ההעלאות כמה פעמים שצריך בזמן שה-URI של הסשן פעיל. ה-URI של הסשן פג לאחר שבוע. כשמעלים את הנתונים בהצלחה, Cloud Storage משיב עם קוד סטטוס 200 OK או 201 created.
ביטול העלאה
כדי לבטל העלאה שניתן להמשיך שלא הושלמה ולמנוע פעולה עתידית נוספת לגביה:
API בפורמט JSON
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט JSON עם בקשתDELETE:curl -i -X DELETE -H "Content-Length: 0" \ "SESSION_URI"
כאשר:
-
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
אם הפעולה מצליחה, התשובה תכיל קוד סטטוס 499. ניסיונות עתידיים לשלוח שאילתה לתוצאת ההעלאה או להמשיך אותה יביאו לתשובה 4xx.
API בפורמט XML
משתמשים ב-
cURLכדי לשלוח קריאה ל-API בפורמט XML באמצעות בקשתDELETE:curl -i -X DELETE -H "Content-Length: 0" \ "SESSION_URI"
כאשר:
-
SESSION_URIהוא הערך שהוחזר בכותרתLocationכשבוצע אתחול של ההעלאה שניתן להמשיך.
-
אם הקריאה מצליחה, התשובה תכיל קוד הסטטוס 204, וניסיונות עתידיים לשלוח שאילתה או להמשיך את ההעלאה יובילו לתשובה 204.
טיפול בכשלים
במקרים נדירים, בקשה להמשך העלאה שהופסקה עלולה להיכשל עם שגיאת '4xx' שלא ניתן לנסות שוב, כי ההרשאות בדלי השתנו או כי בדיקת השלמות של האובייקט הסופי שהועלה זיהתה חוסר התאמה. במקרה כזה, צריך לנסות שוב להעלות את הקובץ על ידי התחלת סשן חדש של העלאה שניתן להמשיך.
המאמרים הבאים
- מידע נוסף על העלאות שניתן להמשיך.
- סקירה כללית של API בפורמט JSON ו-API בפורמט XML.
- העלאות סטרימינג בגודל לא ידוע.
- שליחת מספר בקשות באצווה ל-API בפורמט JSON ב-Cloud Storage.