אפשר להסיר קבצים ותיקיות מ-Google Drive גם מ'האחסון שלי' וגם מתיקיות האחסון השיתופי. יש לכם שתי אפשרויות לעשות זאת: העברה לאשפה או מחיקה.
אפשר להעביר קבצים ותיקיות לאשפה ואז לשחזר אותם (תוך 30 יום ממועד העברתם לאשפה). מחיקת קבצים ותיקיות מסירה אותם באופן סופי מ-Drive. אם אתם מעבירים לאשפה, משחזרים או מוחקים לתמיד מספר קבצים או תיקיות בו-זמנית, ייתכן שיחלוף קצת זמן עד שתראו את השינויים.
במדריך הזה מוסבר איך למחוק קבצים ב-Drive.
אשפה
כדי להסיר קבצים מ-Drive, אתם יכולים להעביר אותם לאשפה. הקבצים באשפה נמחקים באופן אוטומטי אחרי 30 יום. תוכלו לשחזר קבצים מהאשפה לפני שחלפו 30 יום.
רק הבעלים של הקובץ יכול להעביר אותו לאשפה, ומשתמשים אחרים לא יכולים להציג את הקבצים באשפה של הבעלים. אם תנסו להעביר לאשפה קובץ שלא בבעלותכם, תקבלו את הודעת השגיאה insufficientFilePermissions
. מידע נוסף זמין במאמר הרשאות.
כדי לאמת שאתם הבעלים של הקובץ, קוראים לשיטה files.get
עם הערך fileId
והפרמטר fields
מוגדר לשדה ownedByMe
הבוליאני. השדה ownedByMe
לא מאוכלס בקבצים בתיקיות אחסון שיתופי כי הם בבעלות של האחסון השיתופי ולא של משתמשים ספציפיים. למידע נוסף על החזרת שדות באמצעות הפרמטר fields
, תוכלו לקרוא את המאמר החזרת שדות ספציפיים של קובץ.
אם אתם לא הבעלים של הקובץ אבל אתם עדיין רוצים לקבל עותק שלו, תוכלו לבצע אחת מהפעולות הבאות:
- יוצרים עותק של הקובץ.
- פונים לבעלים ומבקשים לשחזר הקובץ מהאשפה.
העברת קובץ לאשפה
כדי להעביר קובץ לאשפה, משתמשים בשיטה 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
: אם הקובץ הועבר לאשפה באופן מפורש, המשתמש שהעביר אותו לאשפה.
שחזור קובץ מהאשפה
כדי לשחזר קובץ מהאשפה, משתמשים בשיטה 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
בתיקיית ההורה. אם מוחקים תיקייה, כל הצאצאים שבבעלות המשתמש נמחקים גם הם. מידע נוסף זמין במאמר הרשאות.
כדי למחוק באופן סופי קובץ בבעלות משתמש מבלי להעביר אותו לאשפה, משתמשים בשיטה 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
: האם המשתמש הנוכחי יכול להסיר ילדים מהתיקייה הזו. הערך False כשהפריט אינו תיקייה.
השדות הבאים מאוכלסים רק בקבצים שנמצאים באחסון שיתופי:
capabilities.canTrashChildren
: האם המשתמש הנוכחי יכול להעביר לאשפה את הצאצאים של התיקייה הזו. הערך False כשהפריט אינו תיקייה.capabilities.canDeleteChildren
: האם המשתמש הנוכחי יכול למחוק צאצאים של התיקייה הזו. הערך False כשהפריט אינו תיקייה.
נושאים קשורים
- מחיקה ושחזור של קבצים ב-Google Drive
- הבדלים בין האחסון השיתופי לבין ה-API של 'האחסון שלי'
- תפקידים והרשאות