1

我正在尝试制作 javascript 代码来列出 Google Drive 根目录中所有文件的名称。仅供参考:我是 javascript 新手。

对于第一个函数,我从https://developers.google.com/drive/v2/reference/children/list复制了代码。

接下来的两个函数是我自己的代码。我的结果只是一堆“[object Object]、[object Object]、[object Object]、[object Object]”。此输出与我在 Google Drive 根文件夹中的文件数量相匹配。但是,我想要文件名或 ID,但除了“[object Object]”之外,我似乎什么也得不到。

我尝试将“resp.items”更改为“resp.kind”或“resp.selflink”,但后来我得到“未定义”。任何人都知道如何获取有关文件的任何特定信息?如果重要,范围是“ https://www.googleapis.com/auth/drive ”。

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, []);
}



function printToOutdiv (result){document.getElementById("outdiv").innerHTML=result;}

function GetFilesButton (){
    gapi.client.load('drive', 'v2', function() {retrieveAllFilesInFolder('root',printToOutdiv);} );
}  
4

1 回答 1

1

您得到的结果是一个可以按索引访问的对象数组,如result[0],result[1]等。

一旦获得对这些对象之一的引用,您就可以访问其属性(例如 id),如result[0].id.

于 2013-02-27T05:09:15.953 回答