【发布时间】:2016-03-31 20:44:35
【问题描述】:
我正在尝试通过 Drive API 从我的 Google Drive 访问一些文件。我按照教程 here 使用 Javascript 进行操作。现在,只需调用函数listFiles() 即可正常工作,并打印驱动器中的所有文件及其ID。
但是,我想访问在某些文件夹中找到的所有文件。网上看了一下,驱动API有这样一个函数叫retrieveAllFilesInFolder(folderId, callback)
定义如下:
function retrieveAllFilesInFolder(folderId, callback) {
var retrievePageOfChildren = function(request, result) {
request.execute(function(resp) {
result = result.concat(resp.items);
var nextPageToken = resp.nextPageToken;
if (nextPageToken) {
request = gapi.client.drive.children.list({
'folderId' : folderId,
'pageToken': nextPageToken
});
retrievePageOfChildren(request, result);
} else {
callback(result);
}
});
}
var initialRequest = gapi.client.drive.children.list({
'folderId' : folderId
});
retrievePageOfChildren(initialRequest, []);
}
当我调用本地服务器中的代码(传入文件夹的字符串 ID)时,我收到以下错误:quickstart.html:73 Uncaught TypeError: Cannot read property 'list' of undefined,暗示此文件夹没有子文件夹。我知道这是假的。发生这种情况是否有特殊原因。
【问题讨论】:
-
您使用的是什么版本的 Drive API?与 Drive API V3(最新)一样,要列出文件夹的子级,其余调用更改为 files.list with ?q='parent_id'+in+parents 检查 here
标签: javascript google-app-engine google-drive-api