【发布时间】:2021-01-05 16:56:28
【问题描述】:
我正在使用列表权限端点 (https://developers.google.com/drive/api/v3/reference/permissions/list) 来获取共享驱动器中存在的文件的所有权限。
我在使用共享驱动器中的文件时遇到了问题。该文件有 100 个权限。为共享驱动器文件返回的权限数量的最大限制为 100,因此我只需要发出一个请求即可获取文件的所有权限,并且 API 不应返回下一页令牌。
但这不是我遇到的行为,在第一次请求之后,我不断地从 API 返回相同的下一页令牌。
所以对于下面的代码(用 go 编写),我进入了一个无限循环,因为我不断地得到相同的下一页令牌。
var permissionService PermissionsService := getPermissionsService()
fileID := "1234abcd"
nextPageToken := ""
anotherPage := true
permissions := []*Permission{}
for anotherPage {
result, err := permissionService.
List(fileID).
SupportsAllDrives(true).
SupportsTeamDrives(false).
Fields("*").
PageSize(100).
Do()
if err != nil {
panic(err)
}
anotherPage = result.NextPageToken != ""
nextPageToken = result.NextPageToken
permissions = append(permissions, result.Permissions...)
}
fmt.Println("Permissions", permissions)
我应该在我的代码中考虑这种情况吗?从文档中,这从未被提及,所以我认为这不应该发生。
【问题讨论】:
标签: google-api google-drive-api