Phiên bản API Google Drive mới nhất là v3. Hiệu suất trong phiên bản 3 tốt hơn vì các lượt tìm kiếm chỉ trả về một tập hợp con các trường. Sử dụng phiên bản hiện tại trừ phi bạn cần bộ sưu tập v2. Nếu bạn đang sử dụng phiên bản 2, hãy cân nhắc việc di chuyển sang phiên bản 3. Để di chuyển, hãy xem bài viết Di chuyển sang Drive API v3. Để biết danh sách đầy đủ các điểm khác biệt giữa các phiên bản, hãy xem tài liệu tham khảo so sánh Drive API phiên bản 2 và phiên bản 3.
Nếu bạn muốn tiếp tục sử dụng phiên bản 2, hãy xem nội dung sửa đổi Hướng dẫn về Drive API phiên bản 2 để tìm hiểu cách sửa đổi một số hướng dẫn trong hướng dẫn phiên bản 3 cho nhà phát triển phiên bản 2.
Để tìm hiểu thêm về các điểm cải tiến của Drive API phiên bản 3, bạn có thể xem video sau đây của các kỹ sư Google thảo luận về thiết kế API mới.
Các điểm cải tiến của phiên bản V3
Để tối ưu hoá hiệu suất và giảm độ phức tạp của hành vi API, phiên bản 3 cung cấp những điểm cải tiến sau so với phiên bản API trước:
- Theo mặc định, các lượt tìm kiếm tệp và bộ nhớ dùng chung sẽ không trả về toàn bộ tài nguyên, mà chỉ trả về một số trường thường dùng. Để biết thêm thông tin chi tiết về
fields
, hãy xem phương thứcfiles.list
và phương thứcdrives.list
. - Giờ đây, hầu hết các phương thức trả về phản hồi đều yêu cầu tham số
fields
. Để biết danh sách tất cả các phương thức yêu cầufields
, hãy xem Tài liệu tham khảo về API Drive. - Các tài nguyên có chức năng trùng lặp đã bị xoá. Một số ví dụ:
- Phương thức
files.list
thực hiện cùng một chức năng như các bộ sưu tậpChildren
vàParents
, vì vậy, các bộ sưu tập này đã bị xoá khỏi phiên bản 3. - Các phương thức
Realtime.*
đã bị xoá.
- Phương thức
- Theo mặc định, Dữ liệu ứng dụng không được trả về trong các lượt tìm kiếm. Trong phiên bản 2, bạn có thể đặt phạm vi
drive.appdata
và phạm vi này sẽ trả về dữ liệu ứng dụng từ phương thứcfiles.list
và phương thứcchanges.list
, nhưng sẽ làm chậm hiệu suất. Trong phiên bản 3, bạn đặt phạm vidrive.appdata
và cũng đặt thông số truy vấnspaces=appDataFolder
để yêu cầu dữ liệu ứng dụng. - Tất cả các thao tác cập nhật đều sử dụng PATCH thay vì PUT.
- Để xuất Google Tài liệu, hãy sử dụng phương thức
files.export
. - Hành vi của phương thức
changes.list
khác. Thay vì thay đổi mã nhận dạng, hãy sử dụng mã thông báo trang mờ. Để thăm dò ý kiến về bộ sưu tập thay đổi, trước tiên, hãy gọi phương thứcchanges.getStartPageToken
cho giá trị ban đầu. Đối với các truy vấn tiếp theo, phương thứcchanges.list
sẽ trả về giá trịnewStartPageToken
. - Các phương thức cập nhật hiện từ chối các yêu cầu chỉ định các trường không ghi được.
- Các trường
exportFormats
vàimportFormats
phiên bản 2 trong tài nguyênabout
là danh sách các định dạng nhập hoặc xuất được cho phép. Trong phiên bản 3, đó là các bản đồ loại MIME của các mục tiêu có thể xảy ra cho tất cả các hoạt động nhập hoặc xuất được hỗ trợ. - Các bí danh
appdata
vàappfolder
của phiên bản 2 hiện làappDataFolder
trong phiên bản 3. - Tài nguyên
properties
bị xoá khỏi phiên bản 3. Tài nguyênfiles
có trườngproperties
chứa các cặp khoá-giá trị đúng. Trườngproperties
chứa các thuộc tính công khai và trườngappProperties
chứa các thuộc tính riêng tư, vì vậy, bạn không cần trường chế độ hiển thị. - Trường
modifiedTime
trong tài nguyênfiles
sẽ cập nhật lần gần nhất người dùng nào đó sửa đổi tệp. Trong phiên bản 2, trườngmodifiedDate
chỉ có thể thay đổi khi cập nhật nếu bạn đặt trườngsetModifiedDate
. - Trường
viewedByMeTime
trong tài nguyênfiles
không tự động cập nhật. - Để nhập các định dạng Google Tài liệu, bạn đặt
mimeType
mục tiêu thích hợp trong phần nội dung tài nguyên. Trong phiên bản 2, bạn đặt?convert=true
. - Các thao tác nhập sẽ trả về lỗi 400 nếu định dạng không được hỗ trợ.
- Người đọc và người bình luận không thể xem quyền.
- Xoá bí danh
me
cho các quyền. - Một số chức năng có sẵn trong tài nguyên yêu cầu nhưng hiện có sẵn dưới dạng tham số yêu cầu. Ví dụ:
- Trong phiên bản 2, bạn có thể sử dụng
children.delete
để xoá tệp con khỏi thư mục mẹ. - Trong phiên bản 3, bạn sử dụng
files.update
trên phần tử con có?removeParents=parent_id
trong URL.
- Trong phiên bản 2, bạn có thể sử dụng
Các điểm khác biệt khác
Các trường và tên tham số khác nhau trong phiên bản 3. Một số ví dụ bao gồm:
- Thuộc tính
name
thay thếtitle
trong tài nguyênfiles
. Time
là hậu tố cho tất cả các trường ngày và giờ thay vìDate
.- Các thao tác liệt kê không sử dụng trường
items
để chứa tập hợp kết quả. Loại tài nguyên cung cấp một trường cho kết quả (chẳng hạn nhưfiles
hoặcchanges
).