1

授权部分已经完成并且工作正常(没有错误等)。在此之后,我想从驱动器的根目录获取文件夹和文件。首先开始获取根目录中的文件(该过程与使用子目录获取文件夹非常相似)。

我设计了以下代码(根据产生类似结果的谷歌示例),这是我的驱动器类的一部分:

o.cdGetCloudFiles = function(fCallback, sFolderId )
{
  var oDefQ = {q:'trashed=false', maxResults:1000, folderId:(typeof sFolderId == 'string')?sFolderId:'root'},
      fGetFiles = function(request, result) 
      {
        request.execute(function(resp) 
        {
            if( resp.items instanceof Array )   
            {
              result = result.concat(resp.items);
              if( resp.nextPageToken ) 
              { // Get next file and 'break' this function 
                 return fGetFiles(gapi.client.drive.files.list($j.extend(oDefQ,{'pageToken':resp.nextPageToken})), result); 
              } 
            }

            fCallback(result.length?result:false);
        });
      };

  fGetFiles(gapi.client.drive.files.list(oDefQ), []);
};

原始代码可以在这里找到:https ://developers.google.com/drive/v2/reference/files/list

驱动器根目录下有两个文件和一个目录:

[folder] Alice Deejay - Who Needs Guitars Anyway
[file] A day without rain.mp3
[file] Discobitch - C'est beau la bourgeoisie.mp3

问题是我没有使用上面的示例获得任何文件。当我更改'trashed=false''trashed=true'然后我得到四个已删除的文件(我之前从驱动器中删除)。

有人可以解释为什么我看不到/获取任何文件吗?也改变了公众的权利,但似乎没有任何区别。

4

1 回答 1

1

与以下问题相同的情况: google drive api, javascript list files returned nothing

我需要在授权时将路径“”添加到范围中drive,我只有drive.file它打算只创建/编辑文件。奇怪的是,当您没有查看文件的权限时,API 会返回已删除的文件,我认为这是 API 中的一个错误(一个严重的错误)。

在谷歌驱动器上发布这个错误: https : //productforums.google.com/forum/#!searchin/drive/security $20issue$20permission$20view/drive/pupjKxTz9FU/cUarGIl_Ah0J

于 2013-08-12T19:45:06.600 回答