获取 Google Team Drive 中的元素数量
Get the number of elements in a Google Team Drive
Google 团队驱动器有 400 000 个文件的限制,我想知道有多少元素已上传到特定驱动器,以便获得组织管理员可以从 https://admin.google.com.
我找不到这个值的任何 API 端点,有没有办法计算这个限制?
答案:
没有端点可以为您提供此信息,因此您必须对每个驱动器进行 files: list
调用并在本地进行计算。
示例:
首先,您需要调用 drives: list
以获得您所属的所有共享驱动器的列表:
curl \
'https://www.googleapis.com/drive/v3/drives
?fields=drives%2Fid
&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
此处,字段drives/id
仅用于获取ID列表。
然后您可以使用 files: list
遍历每个 ID 以获取该驱动器中的文件列表:
curl \
'https://www.googleapis.com/drive/v3/files
?corpora=drive
&driveId=[YOUR_DRIVE_ID]
&includeItemsFromAllDrives=true
&pageSize=1000
&supportsAllDrives=true
&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
在此响应中,您可能会得到一个 nextPageToken
参数。这意味着云端硬盘中有超过 1000 个文件,因此您将需要发出包含此页面令牌的后续请求,直到您收到没有一个的响应:
curl \
'https://www.googleapis.com/drive/v3/files
?corpora=drive
&driveId=[YOUR_DRIVE_ID] &includeItemsFromAllDrives=true
&pageSize=1000
&pageToken=[NEXT_PAGE_TOKEN]
&supportsAllDrives=true
&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
确保计算每个请求返回结果的总数。
根据每个共享驱动器中的文件数量,您可以从数学上计算每个驱动器使用的文件总数的百分比:
(no_of_files_in_drive / 400000) * 100
功能请求:
但是,您可以让 Google 知道这是一个对于访问他们的 API 很重要的功能,并且您希望请求他们实现它。
Google 的 Issue Tracker is a place for developers to report issues and make feature requests for their development services, I'd urge you to make a feature request there. The best component to file this under would be the Google Drive component,使用 Feature Request
模板。
参考文献:
Google 团队驱动器有 400 000 个文件的限制,我想知道有多少元素已上传到特定驱动器,以便获得组织管理员可以从 https://admin.google.com.
我找不到这个值的任何 API 端点,有没有办法计算这个限制?
答案:
没有端点可以为您提供此信息,因此您必须对每个驱动器进行 files: list
调用并在本地进行计算。
示例:
首先,您需要调用 drives: list
以获得您所属的所有共享驱动器的列表:
curl \
'https://www.googleapis.com/drive/v3/drives
?fields=drives%2Fid
&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
此处,字段drives/id
仅用于获取ID列表。
然后您可以使用 files: list
遍历每个 ID 以获取该驱动器中的文件列表:
curl \
'https://www.googleapis.com/drive/v3/files
?corpora=drive
&driveId=[YOUR_DRIVE_ID]
&includeItemsFromAllDrives=true
&pageSize=1000
&supportsAllDrives=true
&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
在此响应中,您可能会得到一个 nextPageToken
参数。这意味着云端硬盘中有超过 1000 个文件,因此您将需要发出包含此页面令牌的后续请求,直到您收到没有一个的响应:
curl \
'https://www.googleapis.com/drive/v3/files
?corpora=drive
&driveId=[YOUR_DRIVE_ID] &includeItemsFromAllDrives=true
&pageSize=1000
&pageToken=[NEXT_PAGE_TOKEN]
&supportsAllDrives=true
&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
确保计算每个请求返回结果的总数。
根据每个共享驱动器中的文件数量,您可以从数学上计算每个驱动器使用的文件总数的百分比:
(no_of_files_in_drive / 400000) * 100
功能请求:
但是,您可以让 Google 知道这是一个对于访问他们的 API 很重要的功能,并且您希望请求他们实现它。
Google 的 Issue Tracker is a place for developers to report issues and make feature requests for their development services, I'd urge you to make a feature request there. The best component to file this under would be the Google Drive component,使用 Feature Request
模板。