ניתן להסיר קבצים ותיקיות מ-Google Drive גם מתיקיית 'האחסון שלי' וגם מתיקיות האחסון השיתופי. יש שתי אפשרויות לעשות זאת: להעביר לאשפה או למחוק.
אפשר להעביר קבצים ותיקיות לאשפה ואז לשחזר אותם (תוך 30 יום ממועד ההעברה שלהם לאשפה). מחיקת קבצים ותיקיות מסירה אותם לתמיד מ-Drive. אם אתם מעבירים לאשפה, משחזרים או מוחקים לתמיד מספר קבצים או תיקיות בו-זמנית, יכול להיות שיעבור קצת זמן עד שתוכלו לראות את השינויים.
במדריך הזה מוסבר איך אפשר למחוק קבצים ב-Drive.
אשפה
כדי להסיר קבצים מ-Drive, אפשר להעביר אותם לאשפה. הקבצים באשפה נמחקים אוטומטית אחרי 30 יום. תוכלו לשחזר קבצים מהאשפה לפני שחלפו 30 יום.
רק הבעלים של הקובץ יכול להעביר אותו לאשפה, ומשתמשים אחרים לא יכולים לראות קבצים באשפה של הבעלים. אם תנסו להעביר לאשפה קובץ שלא בבעלותכם, תקבלו את הודעת השגיאה insufficientFilePermissions
. למידע נוסף, ראו הרשאות.
כדי לאמת שאתם הבעלים של הקובץ, צריך להפעיל את השיטה files.get
עם הפרמטר fileId
והפרמטר fields
שמוגדר לשדה הבוליאני ownedByMe
. השדה ownedByMe
לא מאוכלס בקבצים באחסון שיתופי כי הם בבעלות האחסון השיתופי, ולא של משתמשים ספציפיים. למידע נוסף על החזרת שדות באמצעות הפרמטר fields
, ראו החזרת שדות ספציפיים לקובץ.
אם אתם לא הבעלים של הקובץ אבל עדיין רוצים עותק שלו, תוכלו לבצע אחת מהפעולות הבאות:
- יוצרים עותק של הקובץ.
- פונים לבעלים ומבקשים לשחזר את הקובץ מהאשפה.
העברת קובץ לאשפה
כדי להעביר קובץ לאשפה, משתמשים ב-method files.update
ומגדירים את השדה 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
של הקובץ שרוצים להעביר לאשפה.
קביעת המאפיינים של קובץ שהועבר לאשפה
כשקובץ מועבר לאשפה, אפשר לאחזר מאפיינים נוספים של files
. אפשר להשתמש בשיטה files.get
ולכלול את השדות הבאים בפרמטר fields
. למידע נוסף, ראו החזרת שדות ספציפיים בקובץ.
השדות הבאים יאוכלסו בכל הקבצים:
trashed
: האם הקובץ הועבר לאשפה, באופן מפורש או מתיקיית הורה שהועברה לאשפה. שימו לב ששימוש ב-trashed
עם ה-methodfiles.update
מגדיר את סטטוס הקובץ, אבל השיטהfiles.get
מאחזרת את סטטוס הקובץ.explicitlyTrashed
: האם הקובץ הועבר לאשפה באופן מפורש, בניגוד להעברה היררכית לאשפה מתיקיית הורה.
השדות הבאים מאוכלסים רק לגבי קבצים שנמצאים באחסון שיתופי:
trashedTime
: השעה שבה הפריט הועבר לאשפה, בפורמט תאריך-שעה לפי RFC 3339. אם אתם משתמשים בגרסה הקודמת של Drive API v2, השדה הזה נקראtrashedDate
.trashingUser
: אם הקובץ הועבר לאשפה באופן מפורש, המשתמש שהעביר אותו לאשפה.
שחזור קובץ מהאשפה
כדי לשחזר קובץ מהאשפה, משתמשים בשיטה files.update
ומגדירים את השדה trashed
לערך False
. כדי לשחזר קובץ באחסון שיתופי מהאשפה, צריך גם להגדיר את פרמטר השאילתה supportsAllDrives
ל-True
. מידע נוסף זמין במאמר הטמעת תמיכה באחסון שיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה מכיל מופע של המשאב קבצים.
דוגמת הקוד הבאה ממחישה איך להשתמש ב-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 שהמשתמש העביר לאשפה באמצעות השיטה files.emptyTrash
. כדי לרוקן את האשפה של אחסון שיתופי, צריך גם להגדיר את מזהה האחסון השיתופי driveId
כמזהה של האחסון השיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה מכיל מופע ריק.
בדוגמת הקוד הבאה מוסבר איך להשתמש ב-fileId
כדי למחוק את כל הקבצים באשפה:
Python
response = drive_service.files().emptyTrash().execute()
Node.js
const response = await drive_service.files.emptyTrash({
});
return response;
מחיקה
אפשר למחוק לתמיד קובץ ב-Drive בלי להעביר אותו לאשפה. אחרי שאתם מוחקים קובץ, כל מי ששיתפתם איתו את הקובץ יאבד את הגישה אליו. אם אתם רוצים שאנשים אחרים ימשיכו לגשת לקובץ, תוכלו להעביר את הבעלות עליו למישהו אחר לפני המחיקה.
כדי למחוק קובץ באחסון שיתופי, למשתמש צריכה להיות הרשאה role=organizer
בתיקיית ההורה. אם מוחקים תיקייה, כל הצאצאים שבבעלות המשתמש נמחקים גם הם. מידע נוסף זמין במאמר הרשאות.
כדי למחוק באופן סופי קובץ בבעלות משתמש בלי להעביר אותו לאשפה, משתמשים ב-method files.delete
. כדי למחוק קובץ באחסון השיתופי, צריך גם להגדיר את פרמטר השאילתה supportsAllDrives
לערך True
. מידע נוסף זמין במאמר הטמעת תמיכה בתיקיות אחסון שיתופי.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה מכיל מכונה ריקה.
בדוגמת הקוד הבאה מוסבר איך להשתמש ב-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 files.get
עם fileId
והפרמטר fields
מוגדר לשדה capabilities
. למידע נוסף על החזרת שדות באמצעות הפרמטר fields
, ראו החזרת שדות ספציפיים של קובץ.
השדות הבאים מאוכלסים בכל הקבצים:
capabilities.canTrash
: האם המשתמש הנוכחי יכול להעביר את הקובץ הזה לאשפה.capabilities.canUntrash
: האם המשתמש הנוכחי יכול לשחזר את הקובץ הזה מהאשפה.capabilities.canDelete
: האם המשתמש הנוכחי יכול למחוק את הקובץ הזה.capabilities.canRemoveChildren
: האם המשתמש הנוכחי יכול להסיר תיקיות משנה מהתיקייה הזו. הערך הוא שקר אם הפריט הוא לא תיקייה.
השדות הבאים מאוכלסים רק לגבי קבצים שנמצאים באחסון שיתופי:
capabilities.canTrashChildren
: האם המשתמש הנוכחי יכול להעביר לאשפה תיקיות משנה של התיקייה הזו. הערך הוא False אם הפריט הוא לא תיקייה.capabilities.canDeleteChildren
: האם המשתמש הנוכחי יכול למחוק תיקיות משנה של התיקייה הזו. הערך הוא False אם הפריט הוא לא תיקייה.
מגבלות על קבצים ותיקיות
לקבצים ולתיקיות ב-Drive, וגם לתיקיות באחסון השיתופי, יש מגבלות אחסון מסוימות.
בדרך כלל, אחרי שמגיעים למגבלת הפריטים, הדרך היחידה לפנות מקום היא למחוק את הפריטים באופן סופי או להשתמש בחשבון אחר. העברת קבצים לאשפה לא מספיקה כדי לפנות מקום.
מידע נוסף על מגבלות על קבצים ותיקיות זמין במאמרים הבאים: