Hướng dẫn này giải thích cách tạo và quản lý tệp trong Google Drive bằng API Google Drive.
Tạo tệp
Để tạo một tệp trong Drive không chứa siêu dữ liệu hoặc nội dung,
hãy sử dụng phương thức create trên tài nguyên files mà không có tham số.
Khi bạn tạo tệp, phương thức này sẽ trả về một tài nguyên files. Tệp được cấp kind là drive.file, id, name là "Untitled" và mimeType là application/octet-stream.
uploadType
được đánh dấu là bắt buộc nhưng mặc định là media, vì vậy, bạn không thực sự phải
cung cấp giá trị này.
Để biết thêm thông tin về giới hạn tệp trên Drive, hãy xem phần Giới hạn về tệp và thư mục.
Sử dụng tham số fields
Nếu muốn 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 files. Nếu bạn bỏ qua tham số fields, máy chủ sẽ trả về một tập hợp trường mặc định dành riêng cho phương thức đó. Ví dụ: phương thức
list chỉ trả về các trường kind, id,
name, mimeType, và resourceKey cho mỗi tệp. Để trả về các trường khác, hãy xem phần Trả về các trường cụ thể.
Quyền sở hữu tệp
Khi một tệp được tạo bằng API Drive, quyền sở hữu sẽ phụ thuộc vào thông tin xác thực mà ứng dụng sử dụng theo những cách sau:
Tài khoản người dùng (OAuth 2.0): Nếu ứng dụng xác thực thay mặt cho một người dùng, thì người dùng đó sẽ trở thành chủ sở hữu tệp. Sau đó, tệp sẽ nằm trong thư mục Drive của tôi hoặc một thư mục được chỉ định. Tệp này sẽ sử dụng hạn mức bộ nhớ của người dùng.
Tài khoản dịch vụ: Nếu ứng dụng xác thực bằng Tài khoản dịch vụ, thì Tài khoản dịch vụ sẽ là chủ sở hữu tệp. Sau đó, tệp sẽ nằm trong bộ nhớ Drive dành riêng của Tài khoản dịch vụ. Tệp sẽ không xuất hiện trong các tài khoản bộ nhớ Drive khác, trừ phi được chia sẻ một cách rõ ràng. Nếu Tài khoản dịch vụ bị xoá, thì tất cả các tệp mà tài khoản đó sở hữu sẽ bị xoá ngay lập tức.
Nếu bạn đang sử dụng Tài khoản dịch vụ nhưng muốn một tài khoản người dùng cụ thể sở hữu một tệp, hãy sử dụng tính năng Uỷ quyền trên toàn miền. Tính năng này cho phép Tài khoản dịch vụ mạo danh một người dùng và tạo tệp thay mặt cho người dùng đó. Để biết thêm thông tin, hãy xem bài viết Uỷ quyền trên toàn miền cho tài khoản dịch vụ.
Để biết thêm thông tin về quyền đối với tệp, hãy xem bài viết Chia sẻ tệp, thư mục và bộ nhớ dùng chung.
Tạo mã nhận dạng để sử dụng với tệp
Phương thức generateIds trên tài nguyên
files cho phép bạn tạo trước các mã nhận dạng tệp
duy nhất có thể dùng khi tạo hoặc sao chép tệp và thư mục trong
Drive. Điều này có thể hữu ích khi bạn cần kiểm soát mã nhận dạng tệp từ ứng dụng của mình thay vì để Drive tự động chỉ định.
Bạn có thể đặt số lượng mã nhận dạng được tạo bằng tham số truy vấn
count.
Nếu bạn không đặt count, thì hệ thống sẽ trả về 10 theo mặc định. Số lượng mã nhận dạng tối đa mà bạn có thể yêu cầu là 1.000.
Bạn cũng có thể chỉ định
space mà mã nhận dạng
có thể được sử dụng và
type của các mục mà
mã nhận dạng có thể được dùng.
Sau khi tạo, bạn có thể chuyển mã nhận dạng đến phương thức create hoặc copy thông qua trường id. Điều này đảm bảo rằng tệp được tạo hoặc sao chép sẽ sử dụng mã nhận dạng đã xác định trước.
Nếu tệp được tạo hoặc sao chép thành công, thì các lần thử lại tiếp theo sẽ trả về phản hồi mã trạng thái HTTP 409
Conflict và các tệp trùng lặp sẽ không được tạo.
Xin lưu ý rằng hệ thống không hỗ trợ mã nhận dạng được tạo trước để tạo tệp
Google Workspace, ngoại trừ các loạiapplication/vnd.google-apps.drive-sdk
và application/vnd.google-apps.folder MIME. Tương tự, hệ thống không hỗ trợ các lượt tải lên tham chiếu đến việc chuyển đổi sang định dạng tệp Google Workspace.
Tạo tệp chỉ có siêu dữ liệu
Tệp chỉ có siêu dữ liệu không chứa nội dung. Siêu dữ liệu là dữ liệu (chẳng hạn như name, mimeType và createdTime) mô tả tệp. Các trường như name không phụ thuộc vào người dùng và xuất hiện giống nhau đối với mỗi người dùng, trong khi các trường như viewedByMeTime chứa các giá trị dành riêng cho người dùng.
Một ví dụ về tệp chỉ có siêu dữ liệu là thư mục có loại MIME application/vnd.google-apps.folder. Để biết thêm thông tin, hãy xem bài viết Tạo và
điền thư mục. Một ví dụ khác là lối tắt trỏ đến một tệp khác trên Drive có loại MIME application/vnd.google-apps.shortcut. Để biết thêm thông tin, hãy xem bài viết Tạo lối tắt đến tệp trên Drive.
Quản lý hình thu nhỏ
Hình thu nhỏ giúp người dùng xác định tệp trên Drive. Drive có thể tự động tạo hình thu nhỏ cho các loại tệp phổ biến hoặc bạn có thể cung cấp hình thu nhỏ do ứng dụng của bạn tạo. Để biết thêm thông tin, hãy xem bài viết Tải hình thu nhỏ lên.
Sao chép một tệp hiện có
Để sao chép một tệp và áp dụng mọi nội dung cập nhật được yêu cầu, hãy sử dụng phương thức copy trên tài nguyên files. Để tìm
fileId cần sao chép, hãy sử dụng phương thức list.
Bạn có thể áp dụng nội dung cập nhật thông qua ngữ nghĩa bản vá, nghĩa là bạn có thể sửa đổi một phần tài nguyên. Bạn phải đặt rõ ràng các trường mà bạn dự định sửa đổi trong yêu cầu. Mọi trường không có trong yêu cầu sẽ giữ lại giá trị hiện có. Để biết thêm thông tin, hãy xem bài viết Làm việc với tài nguyên một phần.
Bạn có thể đặt trước mã nhận dạng tệp của tệp được sao chép bằng phương thức generateIds. Để biết thêm thông tin, hãy xem
Tạo mã nhận dạng để sử dụng với tệp.
Xin lưu ý rằng bạn cần sử dụng phạm vi API Drive thích hợp để uỷ quyền cho lệnh gọi. Để biết thêm thông tin về phạm vi Drive, hãy xem Chọn phạm vi API Google Drive.
Giới hạn và lưu ý
Khi bạn chuẩn bị sao chép tệp, hãy lưu ý những giới hạn và lưu ý sau:
Quyền:
- Đối tượng
DownloadRestrictionsMetadatacủa tài nguyênfilesxác định người có thể sao chép tệp. Để biết thêm thông tin, hãy xem bài viết Ngăn người dùng tải xuống, in hoặc sao chép tệp. - Tài nguyên trường
capabilities.canCopyxác định xem người dùng có thể sao chép tệp hay không. Để biết thêm thông tin, hãy xem Tìm hiểu về các tính năng của tệp. - Người dùng tạo bản sao sẽ sở hữu tệp được sao chép. Không có chế độ cài đặt chia sẻ nào khác từ tệp nguồn được sao chép. Nếu bản sao được tạo trong một thư mục dùng chung, thì bản sao đó sẽ kế thừa các quyền của thư mục đó.
- Quyền sở hữu tệp được sao chép có thể thay đổi và bản sao có thể không kế thừa cài đặt cách chia sẻ của tệp gốc. Bạn có thể cần đặt lại các chế độ cài đặt này.
- Đối tượng
Quản lý tệp:
- Bạn không bao giờ có thể sao chép một số tệp, chẳng hạn như lối tắt của bên thứ ba.
- Bạn chỉ có thể sao chép một tệp vào một thư mục mẹ. Hệ thống không hỗ trợ việc chỉ định nhiều thư mục mẹ. Nếu bạn không chỉ định trường
parents, thì tệp sẽ kế thừa mọi thư mục mẹ có thể phát hiện được từ tệp nguồn. - Mặc dù thư mục là một loại tệp, nhưng bạn không thể sao chép thư mục.
Thay vào đó, hãy tạo một thư mục đích và đặt trường
parentscủa các tệp hiện có thành thư mục đích. Sau đó, bạn có thể xoá thư mục nguồn ban đầu. - Trừ phi bạn chỉ định tên tệp mới, phương thức
copysẽ tạo ra một tệp có cùng tên với tệp gốc. - Việc sử dụng quá nhiều phương thức
copycó thể dẫn đến việc vượt quá hạn mức API Drive của bạn. Để biết thêm thông tin, hãy xem bài viết Giới hạn sử dụng.
Chủ đề có liên quan
Sau đây là một vài bước tiếp theo mà bạn có thể thử:
Để tải dữ liệu tệp lên khi bạn tạo hoặc cập nhật tệp, hãy xem Tải dữ liệu tệp lên.
Để tạo một tệp trong một thư mục cụ thể, hãy xem bài viết Tạo một tệp trong một thư mục cụ thể.
Để di chuyển tệp, hãy xem bài viết Di chuyển tệp giữa các thư mục.
Để làm việc với siêu dữ liệu tệp, hãy xem bài viết Quản lý siêu dữ liệu tệp.
Để xoá một tệp, hãy xem bài viết Xoá hoặc chuyển tệp và thư mục vào thùng rác.