我对Google Drive API有一些疑问。 我正在从这里(https://everyday-be-coding.blogspot.com/)
这些是我在使用Google Drive API时遇到的问题。请帮我解决这些问题。
这是我用来列出文件的代码
public static List<GoogleDriveFiles> GetDriveFiles()
{
DriveService service = GetService();
// Define parameters of request.
FilesResource.ListRequest FileListRequest = service.Files.List();
FileListRequest.Q = "mimeType = 'application/vnd.google-apps.folder'";
FileListRequest.Fields = "nextPageToken, files(id, name, size, version, trashed, createdTime)";
// List files.
IList<Google.Apis.Drive.v3.Data.File> files = FileListRequest.Execute().Files.Where(c => c.Trashed == false).ToList();
List<GoogleDriveFiles> FileList = new List<GoogleDriveFiles>();
if (files != null && files.Count > 0)
{
foreach (var file in files)
{
GoogleDriveFiles File = new GoogleDriveFiles
{
Id = file.Id,
Name = file.Name,
Size = file.Size,
Version = file.Version,
CreatedTime = file.CreatedTime
};
FileList.Add(File);
}
}
return FileList;
}
答案 0 :(得分:1)
trashed = false
。‘folder id' in parents
。希望这会有所帮助!
答案 1 :(得分:1)
如何从Google驱动器将默认文件列表长度(100)更改为完整文件列表长度?
files.list作为默认的最大页面大小100,但是您可以通过发送pageSize参数来增加它,可以将其设置为100-1000。
之后,您将需要使用NextPageToken。真幸运,我们在C#中为此提供了PageStreamer方法
var pageStreamer = new Google.Apis.Requests.PageStreamer<Google.Apis.Drive.v3.Data.File, FilesResource.ListRequest, Google.Apis.Drive.v3.Data.FileList, string>(
(req, token) => request.PageToken = token,
response => response.NextPageToken,
response => response.Files);
在https://www.daimto.com/list-all-files-on-google-drive/
上有关于如何使用它的教程。如何避免从Google驱动器垃圾箱中列出文件?
File.list还有另一个称为q参数的参数,它将允许您搜索要查找的文件search
因此,以下内容将忽略已破坏的文件。
q = trashed = false
如何在Google驱动器中使用文件夹名称搜索并列出特定文件夹内的内容?
要执行此操作,您将需要找到要查找的最东方方法的文件夹,即再次使用q参数,并仅搜索具有名称的文件夹将有助于您找到所需的文件夹。
mimeType != 'application/vnd.google-apps.folder' and name = 'hello'
保存后,保存该文件夹的file.id
mimeType != 'application/vnd.google-apps.folder' and name = 'hello'
然后您可以发出另一个请求,该请求将找到父文件夹中的所有文件
'the file id here' in parents
测试您的搜索的最佳地点是文档页面here上的“尝试我”