אתם יכולים להסיר קבצים ותיקיות מ-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
עם השיטהfiles.update
, הסטטוס של הקובץ מוגדר, ואילו השיטהfiles.get
מאחזרת את הסטטוס של הקובץ.explicitlyTrashed
: האם הקובץ הועבר לאשפה באופן מפורש, בניגוד להעברה היררכית לאשפה מתיקיית הורה.
השדות הבאים מאוכלסים רק לגבי קבצים שנמצאים באחסון שיתופי:
trashedTime
: השעה שבה הפריט הועבר לאשפה, בפורמט תאריך-שעה לפי RFC 3339. אם אתם משתמשים בגרסה הקודמת של Drive API v2, השדה הזה נקראtrashedDate
.trashingUser
: אם הקובץ הועבר לאשפה באופן מפורש, המשתמש שהעביר אותו לאשפה.
שחזור קובץ מהאשפה
כדי לשחזר קובץ מהאשפה, משתמשים ב-method files.update
ומגדירים את השדה 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 שהמשתמש העביר לאשפה באמצעות השיטה 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
בוליאניים שמשמשים לציון אם אפשר לבצע פעולה בקובץ.
כדי לבדוק את היכולות, צריך להפעיל את השיטה files.get
עם הפרמטרים fileId
ו-fields
שמוגדרים לשדה capabilities
. למידע נוסף על החזרת שדות באמצעות הפרמטר fields
, ראו החזרת שדות ספציפיים של קובץ.
השדות הבאים מאוכלסים בכל הקבצים:
capabilities.canTrash
: האם המשתמש הנוכחי יכול להעביר את הקובץ הזה לאשפה.capabilities.canUntrash
: האם המשתמש הנוכחי יכול לשחזר את הקובץ הזה מהאשפה.capabilities.canDelete
: האם המשתמש הנוכחי יכול למחוק את הקובץ הזה.capabilities.canRemoveChildren
: האם המשתמש הנוכחי יכול להסיר תיקיות משנה מהתיקייה הזו. הערך הוא שקר אם הפריט הוא לא תיקייה.
השדות הבאים מאוכלסים רק לגבי קבצים שנמצאים באחסון שיתופי:
capabilities.canTrashChildren
: האם המשתמש הנוכחי יכול להעביר לאשפה תיקיות משנה של התיקייה הזו. הערך הוא שקר אם הפריט הוא לא תיקייה.capabilities.canDeleteChildren
: האם המשתמש הנוכחי יכול למחוק תיקיות משנה של התיקייה הזו. הערך הוא שקר אם הפריט הוא לא תיקייה.
מגבלות על קבצים ותיקיות
יש מגבלות אחסון מסוימות על קבצים ותיקיות ב-Drive, וגם על תיקיות באחסון שיתופי.
בדרך כלל, אחרי שמגיעים למגבלת הפריטים, הדרך היחידה לפנות מקום היא למחוק את הפריטים באופן סופי או להשתמש בחשבון אחר. העברת קבצים לאשפה לא מספיקה כדי לפנות מקום.
מידע נוסף על מגבלות על קבצים ותיקיות זמין במאמרים הבאים: