Java - Google Drive API v3 - 返回文件 - 语法的特定字段



我正在尝试获取大量云端硬盘文件。我需要获取 3 个参数电子邮件地址、显示名称和修改时间。我只想调用一次 API,以减少处理时间。但是我无法弄清楚组合字段的语法。

files = getDriveService().files().list()
.setFields("files, permissions(emailAddress,displayName)")
.setIncludeTeamDriveItems(true)
.setSupportsTeamDrives(true).execute();

给我:

"code": 400,
"errors": [
{
"domain": "global",
"location": "fields",
"locationType": "parameter",
"message": "Invalid field selection permissions",
"reason": "invalidParameter"
}
],
"message": "Invalid field selection permissions"

我试过:

.setFields("files, permissions(emailAddress,displayName)")
.setFields("files(modifiedTime), permissions(emailAddress,displayName)")
.setFields("files/modifiedTime, permissions(emailAddress,displayName)")
.setFields("modifiedTime, permissions(emailAddress,displayName)")
.setFields("permissions(emailAddress,displayName)")
.setFields("modifiedTime")

是否可以将字段((与

.setSupportTeamDrives(true(

感谢您的帮助。

权限是指谁可以访问文件。它连接到特定文件。

因此,permissions是文件资源的一个字段,而不是 Files.list 响应中的字段,因此您没有得到所需的结果是正常的。因此,您应该将permissions作为files中的字段进行访问。请求应如下所示:

.setFields("files(modifiedTime, permissions(emailAddress, displayName))")

我希望这有什么帮助。

最新更新