Chuyển vào thùng rác hoặc xoá tệp và thư mục

Bạn có thể xoá các tệp và thư mục trên Google Drive khỏi cả Drive của tôi và bộ nhớ dùng chung. Bạn có hai lựa chọn để thực hiện việc này: chuyển vào thùng rác hoặc xoá.

Bạn có thể chuyển tệp và thư mục vào thùng rác rồi khôi phục các tệp và thư mục đó (trong vòng 30 ngày kể từ khi chuyển vào thùng rác). Thao tác xoá tệp và thư mục sẽ xoá vĩnh viễn các tệp và thư mục đó khỏi Drive. Nếu bạn chuyển vào thùng rác, khôi phục hoặc xoá vĩnh viễn nhiều tệp hoặc thư mục cùng một lúc, thì có thể mất một chút thời gian bạn mới nhận thấy sự thay đổi.

Hướng dẫn này giải thích cách bạn có thể xoá tệp trong Drive.

Thùng rác

Để xoá tệp trên Drive, bạn có thể chuyển tệp đó vào thùng rác. Các tệp trong thùng rác sẽ tự động bị xoá sau 30 ngày. Bạn có thể khôi phục tệp trong thùng rác trước khi hết khoảng thời gian 30 ngày.

Chỉ chủ sở hữu tệp mới có thể chuyển tệp vào thùng rác và người dùng khác không thể xem tệp trong thùng rác của chủ sở hữu. Nếu cố gắng chuyển một tệp không thuộc quyền sở hữu của bạn vào thùng rác, bạn sẽ nhận được lỗi insufficientFilePermissions. Để biết thêm thông tin, hãy xem phần Quyền.

Để xác minh bạn là chủ sở hữu tệp, hãy gọi phương thức files.get với fileId và tham số fields được đặt thành trường boolean ownedByMe. Trường ownedByMe không được điền sẵn cho các tệp trong bộ nhớ dùng chung vì các tệp này thuộc quyền sở hữu của bộ nhớ dùng chung, chứ không phải của từng người dùng. Để biết thêm thông tin về cách trả về các trường bằng tham số fields, hãy xem phần Trả về các trường cụ thể cho một tệp.

Nếu bạn không phải là chủ sở hữu tệp nhưng vẫn muốn có bản sao của tệp đã chuyển vào thùng rác, hãy làm theo một trong các cách sau:

  • Tạo bản sao của tệp đó.
  • Hãy liên hệ với chủ sở hữu để yêu cầu họ khôi phục tệp đó từ thùng rác.

Chuyển tệp vào thùng rác

Để di chuyển một tệp vào thùng rác, hãy sử dụng phương thức files.update và đặt trường trashed thành True. Để chuyển một tệp trong bộ nhớ dùng chung vào thùng rác, bạn cũng phải đặt tham số truy vấn supportsAllDrives thành True. Để biết thêm thông tin, hãy xem phần Triển khai tính năng hỗ trợ bộ nhớ dùng chung.

Nếu thành công, nội dung phản hồi sẽ chứa một thực thể của tài nguyên tệp.

Mã mẫu sau đây cho biết cách sử dụng fileId để đánh dấu tệp là đã chuyển vào thùng rác:

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;

Thay thế FILE_ID bằng fileId của tệp bạn muốn chuyển vào thùng rác.

Xác định thuộc tính của tệp đã chuyển vào thùng rác

Khi một tệp bị chuyển vào thùng rác, bạn có thể truy xuất các thuộc tính files bổ sung. Bạn có thể sử dụng phương thức files.get và đưa các trường sau vào tham số fields. Để biết thêm thông tin, hãy xem phần Trả về các trường cụ thể cho một tệp.

Các trường sau đây được điền sẵn cho tất cả tệp:

  • trashed: Liệu tệp đã được chuyển vào thùng rác hay chưa, một cách rõ ràng hoặc từ một thư mục mẹ đã chuyển vào thùng rác. Xin lưu ý rằng trong khi sử dụng trashed với phương thức files.update đặt trạng thái của tệp, phương thức files.get sẽ truy xuất trạng thái của tệp.
  • explicitlyTrashed: Liệu tệp đã được chuyển vào thùng rác một cách rõ ràng hay không, thay vì chuyển vào thùng rác đệ quy từ một thư mục mẹ.

Các trường sau đây chỉ được điền sẵn cho các tệp nằm trong bộ nhớ dùng chung:

  • trashedTime: Thời gian mục bị chuyển vào thùng rác theo định dạng ngày-giờ RFC 3339. Nếu bạn đang sử dụng phiên bản Drive API v2 trước đó, trường này được gọi là trashedDate.
  • trashingUser: Nếu tệp được chuyển vào thùng rác một cách rõ ràng, thì người dùng đã chuyển tệp đó vào thùng rác.

Khôi phục tệp từ thùng rác

Để khôi phục tệp từ thùng rác, hãy sử dụng phương thức files.update và đặt trường trashed thành False. Để huỷ chuyển tệp vào thùng rác trên bộ nhớ dùng chung, bạn cũng phải đặt tham số truy vấn supportsAllDrives thành True. Để biết thêm thông tin, hãy xem phần Triển khai tính năng hỗ trợ bộ nhớ dùng chung.

Nếu thành công, nội dung phản hồi sẽ chứa một thực thể của tài nguyên tệp.

Mã mẫu sau đây cho biết cách sử dụng fileId để đánh dấu tệp là không phải tệp trong thùng rác:

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;

Thay thế FILE_ID bằng fileId của tệp mà bạn muốn lấy ra khỏi thùng rác.

Dọn sạch thùng rác

Bạn có thể xoá vĩnh viễn tất cả tệp trên Drive mà người dùng đã chuyển vào thùng rác bằng phương thức files.emptyTrash. Để trống thùng rác của một bộ nhớ dùng chung, bạn cũng phải đặt tham số truy vấn driveId thành mã bộ nhớ dùng chung.

Nếu thành công, nội dung phản hồi sẽ chứa một thực thể trống.

Mã mẫu sau đây cho biết cách sử dụng fileId để xoá tất cả tệp trong thùng rác:

Python

response = drive_service.files().emptyTrash().execute()

Node.js

 const response = await drive_service.files.emptyTrash({
    });
    return response;

Xoá

Bạn có thể xoá vĩnh viễn một tệp trên Drive mà không cần chuyển tệp đó vào thùng rác. Sau khi bạn xoá một tệp, bất kỳ ai được bạn chia sẻ tệp sẽ mất quyền truy cập vào tệp đó. Nếu muốn người khác vẫn giữ quyền truy cập vào tệp, bạn có thể chuyển quyền sở hữu cho người khác trước khi xoá.

Để xoá một tệp trên bộ nhớ dùng chung, người dùng phải có role=organizer trên thư mục mẹ. Nếu bạn đang xoá một thư mục, thì tất cả các thư mục con do người dùng sở hữu cũng sẽ bị xoá. Để biết thêm thông tin, hãy xem phần Quyền.

Để xoá vĩnh viễn một tệp do người dùng sở hữu mà không cần chuyển tệp đó vào thùng rác, hãy sử dụng phương thức files.delete. Để xoá một tệp trên bộ nhớ dùng chung, bạn cũng phải đặt thông số truy vấn supportsAllDrives thành True. Để biết thêm thông tin, hãy xem phần Triển khai tính năng hỗ trợ ổ đĩa dùng chung.

Nếu thành công, nội dung phản hồi sẽ chứa một thực thể trống.

Mã mẫu sau đây cho biết cách sử dụng fileId để xoá tệp:

Python

response = drive_service.files().delete(fileId="FILE_ID").execute()

Node.js

 const response = await drive_service.files.delete({
      fileId: 'FILE_ID'
    });
    return response;

Thay thế FILE_ID bằng fileId của tệp bạn muốn xoá.

Quyền

Bảng sau đây cho biết các quyền theo vai trò cần thiết để thực hiện từng thao tác. Để biết danh sách đầy đủ các vai trò và thao tác mà mỗi vai trò cho phép, hãy tham khảo phần Vai trò và quyền.

Thao tác được phép owner organizer fileOrganizer writer commenter reader
Chuyển tệp và thư mục vào thùng rác
Khôi phục tệp và thư mục từ thùng rác
Dọn sạch thùng rác
Xoá vĩnh viễn tệp hoặc thư mục
Xoá tệp và thư mục trong bộ nhớ dùng chung [*]

Tính năng

Tài nguyên files chứa một tập hợp các trường capabilities boolean dùng để cho biết liệu có thể thực hiện một hành động trên tệp hay không.

Để kiểm tra các chức năng, hãy gọi phương thức files.get với fileId và tham số fields được đặt thành trường capabilities. Để biết thêm thông tin về việc trả về các trường bằng tham số fields, hãy xem phần Trả về các trường cụ thể cho một tệp.

Các trường sau đây được điền sẵn cho tất cả tệp:

  • capabilities.canTrash: Liệu người dùng hiện tại có thể chuyển tệp này vào thùng rác hay không.
  • capabilities.canUntrash: Liệu người dùng hiện tại có thể khôi phục tệp này từ thùng rác hay không.
  • capabilities.canDelete: Liệu người dùng hiện tại có thể xoá tệp này hay không.
  • capabilities.canRemoveChildren: Liệu người dùng hiện tại có thể xoá thư mục con khỏi thư mục này hay không. Giá trị này là sai khi mục không phải là thư mục.

Các trường sau đây chỉ được điền sẵn cho các tệp nằm trong bộ nhớ dùng chung:

  • capabilities.canTrashChildren: Liệu người dùng hiện tại có thể chuyển các thư mục con của thư mục này vào thùng rác hay không. Giá trị này là sai khi mục không phải là thư mục.
  • capabilities.canDeleteChildren: Liệu người dùng hiện tại có thể xoá thư mục con của thư mục này hay không. Giá trị này là sai khi mục không phải là thư mục.

Giới hạn về tệp và thư mục

Các tệp và thư mục trên Drive, cùng với thư mục trên bộ nhớ dùng chung, có một số giới hạn về bộ nhớ.

Nhìn chung, sau khi đạt đến giới hạn mục, cách duy nhất để tạo thêm không gian là xoá vĩnh viễn các mục hoặc sử dụng một tài khoản khác. Việc chuyển tệp vào thùng rác không đủ để giải phóng bộ nhớ.

Để biết thêm thông tin về giới hạn tệp và thư mục, hãy xem nội dung sau: