2014-07-13 38 views
18

Tôi đang cố gắng xây dựng giao diện người dùng web để người dùng điều hướng Google Drive của mình và chọn một hoặc nhiều tài liệu để tham chiếu sau này trong trang web từ DB. Tôi hiện đang xây dựng một giao diện web bằng .NET. Vấn đề tôi đang gặp phải là tôi không thể tìm thấy một chức năng duy nhất để nhận danh sách các tệp theo Id thư mục. tôi đã cố gắng sử dụng:Cách lấy danh sách tệp theo thư mục trên API của Google Drive

... www.googleapis.com/drive/v2/files/BB0CHANGEDIDF5waGdzbUQ5aWs/children

... nhưng điều đó sẽ chỉ cung cấp cho các tập tin tham khảo ID của các tập tin trong thư mục (mục tài nguyên trẻ em được gọi là), có nghĩa là tôi phải lặp qua các tệp đó và tạo cuộc gọi cho từng tệp để nhận tất cả siêu dữ liệu tôi cần cho giao diện người dùng của mình. Thật không may ..

... www.googleapis.com/drive/v2/files

..will Liệt kê tất cả các file của tôi không có tùy chọn lọc theo thư mục. Tôi muốn biết nếu có một cách hiệu quả để trích xuất một thư mục & danh sách tệp từ một cuộc gọi đến máy chủ Drive cho một thư mục cụ thể.

Tôi cũng đã thử điều này (based on answer to the similar issue): Tôi đang sử dụng Fiddler để thực hiện cuộc gọi trực tiếp tới api. Khi tôi sử dụng để thực hiện cuộc gọi '

... www.googleapis.com/drive/v2/files?q='BB0CHANGEDIDF5waGdzbUQ5aWs'

tôi nhận được một lỗi:

{ 
"error": { 
    "errors": [ 
    {wrongID 
    "domain": "global", 
    "reason": "invalid", 
    "message": "Invalid Value", 
    "locationType": "parameter", 
    "location": "q" 
    } 
    ], 
    "code": 400, 
    "message": "Invalid Value" 
} 
} 

Ngay cả khi sử dụng google's test page không làm điều đó. Dường như điểm cuối "tệp" không chấp nhận bất kỳ tham số nào.

Phải có cách để đạt được điều này!

Cảm ơn bạn đã giúp đỡ của bạn

+0

Xem http://stackoverflow.com/questions/41741520/how-do-i-search-sub-folders-and-sub-sub-folders-in-google-drive – pinoyyid

+0

Có, có tài liệu API rất khủng khiếp: ( – CpILL

Trả lời

23

Bạn sẽ có thể chỉ cần sử dụng files/list với một truy vấn phụ huynh;

GET https://www.googleapis.com/drive/v2/files?q='BB0CHANGEDIDF5waGdzbUQ5aWs'+in+parents&key={YOUR_API_KEY} 
+1

THANK YOU cho mẫu chuỗi yêu cầu URL của bạn. Vấn đề là tôi đã bỏ lỡ: + trong + cha mẹ Bạn có thể cho tôi biết nơi này "trong bố mẹ" thêm được ghi lại không? Tôi hoàn toàn bỏ qua nó – user3199365

+0

@ user3199365 Tài liệu [ở đây ] (https://developers.google.com/drive/web/search-parameters), chỉ cần tìm kiếm trang "cha mẹ" –

+1

q = 'root' trong bố mẹ sẽ giúp bạn có được thư mục cấp cao nhất, trong trường hợp bạn tự hỏi – RoccoB

0

Dưới đây là làm thế nào để có được các lĩnh vực cụ thể của tập tin trong thư mục sử dụng v3 API:

https://www.googleapis.com/drive/v3/files?q="folderId"+in+parents&fields=files(md5Checksum,+originalFilename) 
// 

Thay thế "folderId" với thư mục ID.

Bạn có thể sử dụng &fields=files(*) để nhận tất cả các trường của tệp.

Các vấn đề liên quan