Sự khác biệt giữa API Bộ nhớ dùng chung và API Drive của tôi

Bộ nhớ dùng chung có các mô hình tổ chức, chia sẻ và quyền sở hữu khác với Drive của tôi. Do đó, một số thao tác trong Drive của tôi không được phép thực hiện đối với nội dung trong bộ nhớ dùng chung.

Hướng dẫn này trình bày những điểm khác biệt về API dành riêng cho bộ nhớ dùng chung trong các tài nguyên fileschanges.

Tài nguyên tệp

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

  • hasAugmentedPermissions: Liệu có người dùng nào được cấp quyền truy cập trực tiếp vào tệp này hay không.
  • capabilities/canAddFolderFromAnotherDrive: Liệu người dùng hiện tại có thể thêm một thư mục từ một ổ đĩa khác (một bộ nhớ dùng chung khác hoặc Ổ đĩa của tôi) vào thư mục này hay không.
  • capabilities/canDeleteChildren: Liệu người dùng hiện tại có thể xoá các thư mục con của thư mục này hay không.
  • capabilities/canMoveChildrenOutOfDrive: Người dùng hiện tại có thể di chuyển các thư mục con của thư mục này ra ngoài bộ nhớ dùng chung hay không.
  • capabilities/canMoveChildrenWithinDrive: Người dùng hiện tại có thể di chuyển các thư mục con của thư mục này trong bộ nhớ dùng chung hay không.
  • capabilities/canMoveItemWithinDrive: Người dùng hiện tại có thể di chuyển mục này trong bộ nhớ dùng chung hay không.
  • capabilities/canReadDrive: Người dùng hiện tại có quyền đọc đối với bộ nhớ dùng chung mà tệp này thuộc về hay không.
  • capabilities/canTrashChildren: 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.
  • driveId: Mã nhận dạng của ổ đĩa dùng chung nơi lưu trữ tệp.
  • trashingUser: Nếu tệp đã bị chuyển vào thùng rác một cách rõ ràng, thì đó là người dùng đã chuyển tệp đó vào thùng rác.
  • trashedTime: Thời gian xoá mục vào thùng rác. Nếu bạn đang sử dụng Drive API phiên bản 2 cũ, thì trường này có tên là trashedDate.

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

  • permissions: Do kích thước tiềm năng của danh sách kiểm soát quyền truy cập (ACL) của bộ nhớ dùng chung, nên quyền không được trả về dưới dạng một phần của tệp. Sử dụng phương thức permissions.list (có hỗ trợ phân trang) để liệt kê các quyền đối với một tệp trong bộ nhớ dùng chung hoặc thư mục của bộ nhớ dùng chung.
  • owners, ownerNames, ownedByMe: Tệp trong ổ đĩa dùng chung thuộc sở hữu của ổ đĩa dùng chung chứ không phải người dùng cá nhân.
  • folderColorRgb: Bạn không thể tô màu từng thư mục.
  • shared: Tất cả các mục trong một bộ nhớ dùng chung đều được chia sẻ.
  • writersCanShare: Bạn không thể hạn chế việc chia sẻ theo vai trò trong ổ đĩa dùng chung.

Các trường sau đây chỉ được đặt khi người dùng đã được cấp quyền truy cập vào tệp đối với một mục:

  • sharedWithMeDate
  • sharingUser

Bạn cần cân nhắc đặc biệt đối với các trường sau khi sử dụng chúng với ổ đĩa dùng chung:

  • parents.isRoot: Trường này chỉ đúng với thư mục gốc của Drive của tôi; trường này sai với thư mục cấp cao nhất của bộ nhớ dùng chung.
  • parents: Cha mẹ sẽ không xuất hiện trong danh sách cha mẹ nếu người dùng yêu cầu không phải là thành viên của bộ nhớ dùng chung và không có quyền truy cập vào cha mẹ. Ngoài ra, ngoại trừ thư mục cấp cao nhất, danh sách parents phải chứa đúng một mục nếu tệp nằm trong bộ nhớ dùng chung.

  • capabilities/canRemoveChildren: Sử dụng capabilities/canDeleteChildren hoặc capabilities/canTrashChildren.

Thay đổi tài nguyên

Các trường mới sau đây có trong tài nguyên changes cho bộ nhớ dùng chung:

  • changeType: Loại thay đổi. Các giá trị có thể có là filedrive.
  • driveId: Mã nhận dạng của bộ nhớ dùng chung được liên kết với thay đổi này.
  • drive: Trạng thái mới của bộ nhớ dùng chung. Xuất hiện nếu changeTypedrive và người dùng vẫn là thành viên của bộ nhớ dùng chung.

Có thể bạn cần thực hiện các thay đổi khác đối với những ứng dụng cần đồng bộ hoá nội dung với ổ đĩa dùng chung hoặc theo dõi hoạt động. Để biết thông tin chi tiết, hãy xem bài viết Theo dõi các thay đổi đối với người dùng và bộ nhớ dùng chung.