Quản lý bản sửa đổi tệp

Hướng dẫn này giải thích cách sử dụng revisions tài nguyên để quản lý các bản sửa đổi tệp, chẳng hạn như lấy một bản sửa đổi tệp và xuất bản một bản sửa đổi Google Workspace. API Google Drive cũng cho phép bạn tải các bản sửa đổi xuống. Để biết thêm thông tin chi tiết về thuật ngữ bản sửa đổi, hãy xem bài viết Tổng quan về các thay đổi và bản sửa đổi.

Để truy cập vào nhật ký sửa đổi, người dùng phải có roleowner, organizer, fileOrganizer hoặc writer.

Để chỉ định các trường cần trả về trong phản hồi, bạn có thể đặt fields tham số hệ thống bằng bất kỳ phương thức nào của tài nguyên revisions. Nếu bạn bỏ qua tham số này, máy chủ sẽ trả về một tập hợp trường mặc định. Ví dụ: phương thức revisions.list chỉ trả về các trường id, mimeType, kindmodifiedTime. Để trả về các trường khác, hãy xem bài viết Trả về các trường cụ thể.

Chỉ định các bản sửa đổi cần lưu để tránh bị xoá tự động

Google Drive tự động xoá các bản sửa đổi cũ mà người dùng không còn quan tâm.

Bạn có thể đặt bản sửa đổi tệp blob thành "Giữ vĩnh viễn", nghĩa là bản sửa đổi đó không thể bị xoá tự động. Bạn có thể đặt tối đa 200 bản sửa đổi thành "Giữ vĩnh viễn" và các bản sửa đổi này được tính vào hạn mức bộ nhớ của bạn. Bản sửa đổi đầu không bao giờ bị xoá tự động.

Mọi bản sửa đổi tệp blob (ngoại trừ bản sửa đổi đầu) không được chỉ định là "Giữ vĩnh viễn" đều có thể bị xoá. Các bản sửa đổi có thể bị xoá thường được giữ lại trong 30 ngày, nhưng có thể bị xoá sớm hơn nếu một tệp có 100 bản sửa đổi không được chỉ định là "Giữ vĩnh viễn" và một bản sửa đổi mới được tải lên.

Bạn có thể đặt trường boolean keepForever của tài nguyên revisions thành true để đánh dấu các bản sửa đổi mà bạn không muốn Drive xoá. Sau khi được đặt thành "Giữ vĩnh viễn", bản sửa đổi tệp blob chỉ có thể được tải xuống hoặc xoá. Để biết thêm thông tin, hãy xem bài viết Tải bản sửa đổi xuống hoặc Xoá bản sửa đổi.

Nếu bạn đang sử dụng API Drive v2 cũ, hãy sử dụng trường pinned của tài nguyên revisions thay vì keepForever.

Lấy một bản sửa đổi tệp

Để lấy siêu dữ liệu hoặc nội dung của một bản sửa đổi tệp, hãy sử dụng phương thức get trên tài nguyên revisions với các tham số đường dẫn fileIdrevisionId. Nếu không biết mã bản sửa đổi, bạn có thể liệt kê tất cả các bản sửa đổi trên một tệp bằng phương thức list.

Phương thức này trả về siêu dữ liệu của bản sửa đổi dưới dạng một thực thể của tài nguyên revisions.

Để xác nhận rủi ro khi tải phần mềm độc hại đã biết hoặc các tệp lạm dụng khác xuống, hãy đặt tham số acknowledgeAbuse truy vấn thành true. Trường này chỉ áp dụng khi tham số alt=media được đặt và người dùng là chủ sở hữu tệp hoặc người tổ chức của bộ nhớ dùng chung chứa tệp đó.

Liệt kê các bản sửa đổi của một tệp

Để liệt kê các bản sửa đổi của một tệp, hãy sử dụng list phương thức trên tài nguyên revisions với fileId tham số đường dẫn. Phương thức này trả về một danh sách các bản sửa đổi tệp.

Truyền các tham số truy vấn sau để tuỳ chỉnh phân trang hoặc lọc các bản sửa đổi:

  • pageSize: Số lượng bản sửa đổi tối đa cần trả về trên mỗi trang.

  • pageToken: Mã thông báo trang, nhận được từ một lệnh gọi danh sách trước đó. Cung cấp mã thông báo này để truy xuất trang tiếp theo.

Cập nhật một bản sửa đổi tệp

Để cập nhật một bản sửa đổi trên một tệp, hãy sử dụng phương thức update trên tài nguyên revisions với các tham số đường dẫn fileIdrevisionId path.

Phương thức này trả về một thực thể của tài nguyên revisions.

Tải bản sửa đổi xuống

Bạn chỉ có thể tải các bản sửa đổi nội dung tệp blob được đánh dấu là "Giữ vĩnh viễn" xuống. Nếu muốn tải một bản sửa đổi xuống, trước tiên, hãy nhớ đặt bản sửa đổi đó thành "Giữ vĩnh viễn". Để biết thêm thông tin, hãy xem bài viết Chỉ định các bản sửa đổi cần lưu để tránh bị xoá tự động.

Để tải một bản sửa đổi nội dung tệp blob xuống hoặc xuất một bản sửa đổi nội dung tài liệu Google Workspace, hãy xem bài viết Tải tệp xuống và xuất tệp.

Xoá một bản sửa đổi tệp

Để xoá vĩnh viễn một bản sửa đổi tệp, hãy sử dụng phương thức delete trên tài nguyên revisions với các tham số đường dẫn fileIdrevisionId path.

Bạn chỉ có thể xoá các bản sửa đổi cho tệp BLOB có nội dung nhị phân trong Drive, chẳng hạn như hình ảnh, video và tệp PDF. Bạn có thể xoá một bản sửa đổi tệp blob khi bản sửa đổi đó được đánh dấu là "Giữ vĩnh viễn". Bạn không thể xoá các bản sửa đổi cho các tệp khác, chẳng hạn như Google Tài liệu hoặc Trang tính, và bản sửa đổi cuối cùng còn lại của tệp nhị phân.

Xuất bản một bản sửa đổi

Để xuất bản một bản sửa đổi Google Tài liệu, Google Trang tính và Google Trang trình bày, hãy đặt thuộc tính published cho tệp đó trong tài nguyên revisions. Bạn không thể đặt thuộc tính này cho các bản sửa đổi Google Sites bằng API Drive.

Các bản sửa đổi đã xuất bản không phản ánh những thay đổi được thực hiện đối với một tệp, trừ phi thuộc tính publishAuto được đặt. Nếu thuộc tính được đặt thành true, các bản sửa đổi mới hơn của một tệp sẽ tự động được xuất bản, ghi đè lên các bản sửa đổi trước đó. Trang trình bày và Bản vẽ chỉ hỗ trợ tính năng tự động xuất bản lại và yêu cầu thuộc tính publishAuto được đặt thành true. Đối với các tệp Sites, publishAuto luôn là false.

Nếu tệp được tạo trong một miền Google Workspace, thì thuộc tính publishedOutsideDomain cho biết liệu bất kỳ ai cũng có thể truy cập vào bản sửa đổi hay chỉ người dùng của miền mới có thể truy cập. Đối với các tệp Sites, thuộc tính này cho biết liệu có quyền type=anyone hay không. Để biết thêm thông tin, hãy xem trường type trên tài nguyên permissions.

Tính năng tự động xuất bản cũng được kiểm soát bằng hộp đánh dấu "Tự động công bố lại khi có thay đổi" trong giao diện người dùng của Tài liệu và Trang tính. Để biết thêm thông tin, hãy xem bài viết Đặt tệp Google Tài liệu, Trang tính, Trang trình bày và Biểu mẫu ở chế độ công khai.