他们是否可以通过对Google云端硬盘进行API调用来检查特定的Team Drive是否被破坏了?
我试图对特定的Team驱动器执行GET请求,该请求已被用户删除。但是我得到200响应,那么我该如何检测用户对该团队驱动器的破坏
GET https://www.googleapis.com/drive/v2/teamdrives/ {trashed-team-drive-id}
最佳答案
通过使用Changes: list,您可以在此处检查最新的文件/文件夹更改。包括文件夹移动以及已删除文件的更改。
这是您需要执行的步骤:
使用Changes: getStartPageToken并将值true传递给supportsTeamDrives
参数。只需获得从中获得的价值,因为您将在下一步中使用它。例如。 “ startPageToken”:“ 1203685”
现在,您可以使用“更改:”列表来获取teamDrive中的更改。这是您需要传递的参数:pagetoken
-1203685 //在上述步骤中获得的值。includeRemoved
-是includeTeamDriveItems
-是supportsTeamDrives
-是teamDriveId
-YOUR_TEAM_DRIVE_ID
执行此步骤后,您将收到类似以下内容的信息:
{
"kind": "drive#changeList",
"newStartPageToken": "25",
"changes": []
}
现在,您需要使用此25作为您的页面令牌,由于您使用的是最新的页面令牌,因此您将再次收到相同的结果。您需要手动减少页面令牌,直到收到更改。
这是样本参数和样本结果。
pagetoken
-25 //然后使用24检查最新更改,然后使用23,依此类推。includeRemoved
-是includeTeamDriveItems
-是supportsTeamDrives
-是teamDriveId
-YOUR_TEAM_DRIVE_ID样品结果
{
"kind": "drive#changeList",
"newStartPageToken": "25",
"changes": [
{
"kind": "drive#change",
"type": "file",
"time": "2017-03-23T09:23:43.399Z",
"removed": true,
"fileId": "1JByPgn1GVybkprMC0NX_t0o6xxxxD6ZnuVqo1Kymjqk"
}
]
}
有关更多信息,请在documentation中查看有关Team Drive的信息。
更新的答案
好吧,我能确定是否删除团队驱动器的唯一方法是检查
Teamdrives: list
中是否可用您将在此处看到您拥有的所有可用团队合作精神。
以我为例,我有三支车队,所以结果是这样的:
{
"kind": "drive#teamDriveList",
"teamDrives": [
{
"kind": "drive#teamDrive",
"id": "0AMlDYsxxxxLYUk9PVA"
},
{
"kind": "drive#teamDrive",
"id": "0ABe6rxxxxzGaUk9PVA"
},
{
"kind": "drive#teamDrive",
"id": "0ABgqxxxxgt-NUk9PVA"
}
如果您知道团队驱动器的ID,也可以使用
Teamdrives: get
进行验证。我试图删除团队驱动器之一“ 0AMlDYsxxxxLYUk9PV”,然后再次执行
Teamdrives:列表。现在,我只得到两个结果
{
"kind": "drive#teamDriveList",
"teamDrives": [
{
"kind": "drive#teamDrive",
"id": "0ABe6rxxxxzGaUk9PVA"
},
{
"kind": "drive#teamDrive",
"id": "0ABgqxxxxgt-NUk9PVA"
}
如果我现在使用Teamdrives:获取teamDriveId“ 0AMlDYsxxxxLYUk9PV”,我现在将收到错误404:“找不到团队驱动器:0AMlDYsxxxxLYUk9PV”
希望这些信息对您有所帮助。