אתם יכולים להסיר קבצים ותיקיות מ-Google Drive גם מתיקיית 'האחסון שלי' וגם מתיקיות האחסון השיתופי. יש שתי אפשרויות: העברה לאשפה או מחיקה.
אתם יכולים להעביר קבצים ותיקיות לאשפה ואז לשחזר אותם (בתוך 30 יום מההעברה לאשפה). כשמוחקים קבצים ותיקיות, הם מוסרים מ-Drive באופן סופי. אם מעבירים לאשפה, משחזרים או מסירים באופן סופי כמה קבצים או תיקיות בו-זמנית, יכול להיות שיעבור קצת זמן עד שהשינויים יופיעו.
במדריך הזה מוסבר איך להיפטר מקבצים ב-Drive.
שימוש בפרמטר fields
אם רוצים לציין את השדות שיוחזרו בתגובה, אפשר להגדיר את fields פרמטר המערכת files בכל שיטה של המשאב. אם משמיטים את הפרמטר fields, השרת מחזיר קבוצת ברירת מחדל של שדות שספציפיים לשיטה. לדוגמה, ה-method list מחזירה רק את השדות kind, id, name, mimeType ו-resourceKey של כל קובץ. כדי להחזיר שדות שונים, אפשר לעיין במאמר החזרת שדות ספציפיים.
אשפה
כדי להסיר קבצים מ-Drive, אפשר להעביר אותם לאשפה. קבצים באשפה נמחקים אוטומטית אחרי 30 יום. אפשר לשחזר קבצים מהאשפה לפני שחלון הזמן של 30 הימים נסגר.
רק הבעלים של הקובץ יכול להעביר אותו לאשפה, ומשתמשים אחרים לא יכולים לראות קבצים באשפה של הבעלים. אם תנסו להעביר לאשפה קובץ שלא בבעלותכם, תקבלו את השגיאה insufficientFilePermissions. מידע נוסף מופיע במאמר בנושא הרשאות.
כדי לוודא שאתם הבעלים של הקובץ, קוראים לשיטה get במשאב files עם פרמטר הנתיב fileId והפרמטר fields שמוגדר לשדה הבוליאני ownedByMe. השדה ownedByMe לא מאוכלס עבור קבצים באחסון השיתופי כי הם בבעלות האחסון השיתופי, ולא בבעלות של משתמשים ספציפיים. מידע נוסף על הפרמטר fields זמין במאמר שימוש בפרמטר fields.
אם אתם לא הבעלים של הקובץ אבל אתם רוצים עותק של הקובץ שהועבר לאשפה, אתם יכולים:
- יוצרים עותק של הקובץ.
- פונים לבעלים ומבקשים לשחזר את הקובץ מהאשפה.
העברת קובץ לאשפה
כדי להעביר קובץ לאשפה, משתמשים ב-method update במשאב files עם פרמטר הנתיב fileId ומגדירים את השדה הבוליאני trashed לערך true. כדי להעביר קובץ באחסון שיתופי לאשפה, צריך להגדיר את פרמטר השאילתה הבוליאני supportsAllDrives לערך true. מידע נוסף זמין במאמר בנושא הטמעה של תמיכה באחסון שיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע של משאב files.
בדוגמת הקוד הבאה אפשר לראות איך משתמשים בפרמטר fileId כדי לסמן את הקובץ כקובץ שהועבר לאשפה:
Python
body_value = {'trashed': True}
response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()
Node.js
const body_value = {
'trashed': true
};
const response = await drive_service.files.update({
fileId: 'FILE_ID',
requestBody: body_value,
});
return response;
מחליפים את FILE_ID בfileId של הקובץ שרוצים להעביר לאשפה.
קביעת המאפיינים של קובץ שהועבר לאשפה
כשמעבירים קובץ לאשפה, אפשר לאחזר מאפיינים נוספים של הקובץ. אפשר להשתמש ב-method get במשאב files עם פרמטר הנתיב fileId, ולהשתמש באחד מהשדות הבאים של פריטים שהועברו לאשפה בפרמטר fields. מידע נוסף על הפרמטר fields זמין במאמר שימוש בפרמטר fields.
השדות הבאים מאוכלסים לכל הקבצים:
trashed: האם הקובץ הועבר לאשפה, באופן מפורש או מתיקיית אב שהועברה לאשפה. שימו לב: השימוש ב-trashedעם ה-methodupdateמגדיר את הסטטוס של הקובץ, וה-methodgetמאחזר את הסטטוס של הקובץ.-
explicitlyTrashed: האם הקובץ הועבר לאשפה באופן מפורש, בניגוד להעברה לאשפה באופן רקורסיבי, מתיקיית אב.
השדות הבאים מאוכלסים רק עבור קבצים שנמצאים באחסון שיתופי:
-
trashedTime: השעה שבה הפריט הועבר לאשפה, בפורמט התאריך והשעה RFC 3339. אם אתם משתמשים בגרסה הקודמת של Drive API, v2, השדה הזה נקראtrashedDate. -
trashingUser: אם הקובץ הועבר במפורש לאשפה, המשתמש שהעביר אותו לאשפה.
שחזור קובץ מהאשפה
כדי לשחזר קובץ מהאשפה, משתמשים בשיטה update במשאב files עם פרמטר הנתיב fileId ומגדירים את השדה הבוליאני trashed לערך false. כדי לבטל את ההעברה של קובץ באחסון שיתופי לאשפה, צריך להגדיר את פרמטר השאילתה הבוליאני supportsAllDrives לערך true. מידע נוסף זמין במאמר בנושא הטמעה של תמיכה באחסון שיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל מופע של משאב files.
בדוגמת הקוד הבאה מוצג איך להשתמש בפרמטר fileId כדי לסמן את הקובץ כלא הועבר לאשפה:
Python
body_value = {'trashed': False}
response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()
Node.js
const body_value = {
'trashed': false
};
const response = await drive_service.files.update({
fileId: 'FILE_ID',
requestBody: body_value,
});
return response;
מחליפים את FILE_ID בfileId של הקובץ שרוצים לשחזר מהאשפה.
ריקון האשפה
אפשר למחוק באופן סופי את כל הקבצים ב-Drive שהועברו לאשפה על ידי המשתמש באמצעות השיטה emptyTrash במשאב files. כדי לרוקן את האשפה של תיקיית אחסון שיתופי, צריך להגדיר גם את פרמטר השאילתה driveId למזהה של תיקיית האחסון השיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל אובייקט JSON ריק.
בדוגמת הקוד הבאה אפשר לראות איך משתמשים בפרמטר fileId כדי למחוק לצמיתות את כל הקבצים שנמצאים באשפה:
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
מחיקה
אפשר למחוק קובץ ב-Drive באופן סופי בלי להעביר אותו לאשפה. אחרי שאתם מוחקים קובץ, כל מי ששיתפתם איתו את הקובץ יאבד את הגישה אליו. אם אתם רוצים שאנשים אחרים יוכלו להמשיך לגשת לקובץ, אתם יכולים להעביר את הבעלות למישהו אחר לפני המחיקה.
כדי למחוק קובץ באחסון שיתופי, למשתמש צריכה להיות הרשאה role=organizer בתיקיית האב. אם מוחקים תיקייה, גם כל התיקיות והקבצים שמוכלים בה ונמצאים בבעלות המשתמש נמחקים. מידע נוסף מופיע במאמר בנושא הרשאות.
כדי למחוק באופן סופי קובץ שנמצא בבעלות משתמש בלי להעביר אותו לאשפה, משתמשים בשיטה delete במשאב files. כדי למחוק קובץ באחסון שיתופי, צריך גם להגדיר את פרמטר השאילתה הבוליאני supportsAllDrives לערך true. מידע נוסף זמין במאמר בנושא הטמעה של תמיכה באחסון שיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל אובייקט JSON ריק.
בדוגמת הקוד הבאה מוצג אופן השימוש בפרמטר fileId כדי למחוק את הקובץ:
Python
response = drive_service.files().delete(fileId="FILE_ID").execute()
Node.js
const response = await drive_service.files.delete({
fileId: 'FILE_ID'
});
return response;
מחליפים את FILE_ID בfileId של הקובץ שרוצים למחוק.
הרשאות
בטבלה הבאה מפורטות הרשאות התפקיד שנדרשות להעברה לאשפה או למחיקה של קבצים ותיקיות. רשימה מלאה של התפקידים והפעולות שמותרות בכל אחד מהם מופיעה במאמר תפקידים והרשאות.
| פעולה מותרת | owner |
organizer |
fileOrganizer |
writer |
commenter |
reader |
|---|---|---|---|---|---|---|
| העברת קבצים ותיקיות לאשפה | ||||||
| שחזור קבצים ותיקיות מהאשפה | ||||||
| ריקון האשפה | ||||||
| מחיקת קובץ או תיקייה | ||||||
| מחיקת קבצים ותיקיות באחסון שיתופי [*] | ||||||
| מחיקת אחסון שיתופי ריק |
יכולות
משאב files מכיל אוסף של שדות בוליאניים capabilities שמציינים את היכולות שיש למשתמש בקובץ הזה.
כדי לבדוק את היכולות, קוראים ל-method get במשאב files עם פרמטר הנתיב fileId, ומשתמשים באחד מהשדות הבאים capabilities בפרמטר fields. מידע נוסף על הפרמטר fields זמין במאמר שימוש בפרמטר fields.
השדות הבאים מאוכלסים לכל הקבצים:
-
capabilities.canTrash: האם המשתמש הנוכחי יכול להעביר את הקובץ הזה לאשפה. -
capabilities.canUntrash: האם המשתמש הנוכחי יכול לשחזר את הקובץ הזה מהאשפה. -
capabilities.canDelete: האם המשתמש הנוכחי יכול למחוק את הקובץ הזה. -
capabilities.canRemoveChildren: האם המשתמש הנוכחי יכול להסיר ילדים מהתיקייה הזו. ההגדרה הזו חלה על פריטים שהם לא תיקיות.false
השדות הבאים מאוכלסים רק עבור קבצים שנמצאים באחסון שיתופי:
-
capabilities.canTrashChildren: האם המשתמש הנוכחי יכול להעביר לאשפה פריטים שמוכלים בתיקייה הזו. זה קורהfalseכשהפריט הוא לא תיקייה. -
capabilities.canDeleteChildren: האם המשתמש הנוכחי יכול למחוק פריטים בתיקייה הזו. זה קורהfalseכשהפריט הוא לא תיקייה.
מגבלות על קבצים ותיקיות
יש מגבלות אחסון מסוימות על קבצים ותיקיות ב-Drive, וגם על תיקיות באחסון השיתופי.
בדרך כלל, אחרי שמגיעים למגבלת הפריטים, הדרך היחידה לפנות מקום היא מחיקה לצמיתות של פריטים או שימוש בחשבון אחר. העברת קבצים לאשפה לא מספיקה כדי לפנות מקום.
מידע נוסף על מגבלות הקבצים והתיקיות זמין במאמרים הבאים: