Hướng dẫn này giải thích cách Google Drive API hỗ trợ một số cách tìm kiếm tệp và thư mục.
Bạn có thể sử dụng phương thức list
trên tài nguyên files
để trả về tất cả hoặc một số tệp và thư mục của người dùng Drive. Bạn cũng có thể dùng phương thức list
để truy xuất fileId
cần thiết cho một số phương thức tài nguyên (chẳng hạn như phương thức get
và phương thức update
).
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 fields
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 các 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 nhau, hãy xem phần Trả về các trường cụ thể.
Nhận tệp
Để lấy một tệp, hãy dùng phương thức get
trên tài nguyên files
với tham số đường dẫn fileId
.
Nếu không biết mã nhận dạng tệp, bạn có thể liệt kê tất cả các tệp bằng phương thức list
.
Phương thức này trả về tệp dưới dạng một thực thể của tài nguyên files
. Nếu bạn cung cấp tham số truy vấn alt=media
, thì phản hồi sẽ bao gồm nội dung tệp trong nội dung phản hồi. Để tải xuống hoặc xuất tệp, hãy xem phần Tải xuống và xuất tệp.
Để 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 có hành vi sai trái khác xuống, hãy đặt tham số truy vấn acknowledgeAbuse
thành true
. Trường này chỉ áp dụng khi bạn đặt tham số alt=media
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 đó.
Tìm kiếm tất cả tệp và thư mục trong thư mục Drive của tôi của người dùng hiện tại
Sử dụng phương thức list
mà không có tham số nào để trả về tất cả tệp và thư mục.
GET https://www.googleapis.com/drive/v3/files
Tìm kiếm các tệp hoặc thư mục cụ thể trong phần Drive của tôi của người dùng hiện tại
Để tìm một nhóm tệp hoặc thư mục cụ thể, hãy dùng trường chuỗi truy vấn q
bằng phương thức list
để lọc các tệp cần trả về bằng cách kết hợp một hoặc nhiều cụm từ tìm kiếm.
Cú pháp chuỗi truy vấn gồm 3 phần sau:
query_term operator values
Trong trường hợp:
query_term
là cụm từ hoặc trường truy vấn để tìm kiếm.operator
chỉ định điều kiện cho cụm từ tìm kiếm.values
là những giá trị cụ thể mà bạn muốn dùng để lọc kết quả tìm kiếm.
Ví dụ: chuỗi truy vấn sau đây lọc kết quả tìm kiếm để chỉ trả về các thư mục bằng cách đặt loại MIME:
q: mimeType = 'application/vnd.google-apps.folder'
Để xem tất cả cụm từ tìm kiếm tệp, hãy xem Cụm từ tìm kiếm dành riêng cho tệp.
Để xem tất cả các toán tử truy vấn mà bạn có thể dùng để tạo một truy vấn, hãy xem Toán tử truy vấn.
Ví dụ về chuỗi truy vấn
Bảng sau đây liệt kê ví dụ về một số chuỗi truy vấn cơ bản. Mã thực tế sẽ khác nhau, tuỳ thuộc vào thư viện ứng dụng mà bạn sử dụng cho cụm từ tìm kiếm.
Bạn cũng phải thoát các ký tự đặc biệt trong tên tệp để đảm bảo truy vấn hoạt động chính xác. Ví dụ: nếu tên tệp chứa cả dấu nháy đơn ('
) và dấu gạch chéo ngược ("\"
), hãy dùng dấu gạch chéo ngược để thoát các ký tự đó: name
contains 'quinn\'s paper\\essay'
.
Nội dung bạn muốn truy vấn | Ví dụ: |
---|---|
Các tệp có tên "hello" | name = 'hello' |
Tệp có tên chứa các từ "hello" và "goodbye" | name contains 'hello' and name contains 'goodbye' |
Các tệp có tên không chứa từ "hello" | not name contains 'hello' |
Các tệp có chứa văn bản "quan trọng" và nằm trong thùng rác | fullText contains 'important' and trashed = true |
Các tệp có chứa từ "hello" | fullText contains 'hello' |
Các tệp không có từ "hello" | not fullText contains 'hello' |
Các tệp chứa cụm từ chính xác "hello world" | fullText contains '"hello world"' |
Tệp có cụm từ tìm kiếm chứa ký tự "\" (ví dụ: "\authors") | fullText contains '\\authors' |
Tệp là thư mục | mimeType = 'application/vnd.google-apps.folder' |
Tệp không phải là thư mục | mimeType != 'application/vnd.google-apps.folder' |
Các tệp được sửa đổi sau một ngày nhất định (múi giờ mặc định là UTC) | modifiedTime > '2012-06-04T12:00:00' |
Tệp hình ảnh hoặc video được sửa đổi sau một ngày cụ thể | modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/') |
Tệp có gắn dấu sao | starred = true |
Các tệp trong một bộ sưu tập (ví dụ: mã thư mục trong bộ sưu tập parents ) |
'1234567' in parents |
Các tệp trong thư mục dữ liệu ứng dụng trong một bộ sưu tập | 'appDataFolder' in parents |
Các tệp mà người dùng "test@example.org" là chủ sở hữu | 'test@example.org' in owners |
Các tệp mà người dùng "test@example.org" có quyền ghi | 'test@example.org' in writers |
Các tệp mà thành viên của nhóm "group@example.org" có quyền ghi | 'group@example.org' in writers |
Những tệp được chia sẻ với người dùng được uỷ quyền có tên chứa "hello" | sharedWithMe and name contains 'hello' |
Các tệp có thuộc tính tệp tuỳ chỉnh mà tất cả ứng dụng đều có thể nhìn thấy | properties has { key='mass' and value='1.3kg' } |
Các tệp có thuộc tính tệp tuỳ chỉnh riêng tư đối với ứng dụng yêu cầu | appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' } |
Những tệp chưa được chia sẻ với bất kỳ người dùng hoặc miền nào (chỉ ở chế độ riêng tư hoặc được chia sẻ với người dùng hoặc nhóm cụ thể) | visibility = 'limited' |
Lọc kết quả tìm kiếm bằng thư viện ứng dụng
Đoạn mã sau đây cho thấy cách sử dụng một thư viện ứng dụng để lọc kết quả tìm kiếm theo tên tệp và mã nhận dạng của tệp JPEG. Mẫu này sử dụng cụm từ tìm kiếm mimeType
để thu hẹp kết quả thành các tệp thuộc loại image/jpeg
. Thao tác này cũng đặt spaces
thành drive
để thu hẹp phạm vi tìm kiếm hơn nữa thành không gian trên Drive. Khi nextPageToken
trả về null
, tức là không còn kết quả nào khác.
Java
Python
Node.js
PHP
Tìm tệp có thuộc tính tuỳ chỉnh của tệp
Để tìm kiếm tệp có thuộc tính tệp tuỳ chỉnh, hãy sử dụng cụm từ tìm kiếm properties
hoặc appProperties
cùng với khoá và giá trị. Ví dụ: để tìm kiếm một thuộc tính tệp tuỳ chỉnh ở chế độ riêng tư cho ứng dụng yêu cầu có tên là additionalID
với giá trị là 8e8aceg2af2ge72e78
:
appProperties has { key='additionalID' and value='8e8aceg2af2ge72e78' }
Để biết thêm thông tin, hãy xem bài viết Thêm thuộc tính tuỳ chỉnh cho tệp.
Tìm tệp có nhãn hoặc giá trị trường cụ thể
Để tìm tệp có nhãn cụ thể, hãy sử dụng cụm từ tìm kiếm labels
cùng với một mã nhãn cụ thể. Ví dụ: 'labels/LABEL_ID' in
labels
. Nếu thành công, nội dung phản hồi sẽ chứa tất cả các phiên bản tệp mà nhãn được áp dụng.
Cách tìm kiếm tệp không có mã nhãn cụ thể: Not
'labels/LABEL_ID' in labels
.
Bạn cũng có thể tìm kiếm tệp dựa trên các giá trị cụ thể của trường. Ví dụ: để tìm kiếm các tệp có giá trị văn bản: labels/LABEL_ID.text_field_id ='TEXT'
.
Để biết thêm thông tin, hãy xem bài viết Tìm tệp có nhãn hoặc giá trị trường cụ thể.
Tìm kiếm trong tập hợp văn bản
Các cụm từ tìm kiếm gọi phương thức list
sẽ sử dụng corpora
của user
theo mặc định. Để tìm kiếm các kho ngữ liệu khác, chẳng hạn như các tệp được chia sẻ với domain
, hãy đặt tham số corpora
.
Bạn có thể tìm kiếm nhiều kho ngữ liệu trong một truy vấn duy nhất, mặc dù kết quả không đầy đủ có thể được trả về nếu kho ngữ liệu kết hợp quá lớn. Nếu incompleteSearch
là true
trong nội dung phản hồi, thì không phải tất cả tài liệu đều được trả về. Nếu điều này xảy ra, bạn nên thu hẹp truy vấn bằng cách chọn một kho ngữ liệu khác, chẳng hạn như user
hoặc drive
.
Chủ đề có liên quan
- Tìm bộ nhớ dùng chung
- Các cụm từ và toán tử trong cụm từ tìm kiếm
- Các loại MIME được Google Workspace và Google Drive hỗ trợ
- Vai trò và quyền
- Tìm tệp có nhãn hoặc giá trị trường cụ thể