使用 Google Admin SDK API 传输特定 Files/Folders
Transferring Specific Files/Folders over with Google Admin SDK API
Google API Admin SDK 数据传输:可以找到 here
我已经能够成功地将所有文件从 1 个 Google 帐户复制到另一个帐户,但我只想复制 1 个特定文件。范围和权限正确。
移动所有文件成功的API请求体为:
{
"oldOwnerUserId": "{ID transferring from}",
"newOwnerUserId": "{ID Transferring to}",
"applicationDataTransfers": [
{
"applicationId": "{Google Drive Application ID}"
}
]
}
我要复制的 Google 驱动器文件夹的 ID 是 1HCrNywrvoUly_MrYndR
。我如何调整此代码以仅传输此 Google 驱动器文件夹?
或者,我可以通过 Google API 在其他用户的帐户中创建默认文件夹吗?我需要为每个创建帐户的新用户创建一组空白文件夹,但无法找到使用 Google 驱动器 API 在其他帐户中创建文件夹的方法。此解决方法是在我的 Google 驱动器中创建所有文件夹,然后使用 Admin SDK API 将完成的文件夹发送给新用户。
答案:
Admin SDK API 没有允许您将单个文件或文件夹从一个用户帐户的云端硬盘复制到另一个用户帐户的方法。为此,您必须使用 Google 驱动器 API.
更多信息:
您将需要使用服务帐户来执行此操作,要将一个应用程序授权为多个用户,您必须有一个应用程序 运行 具有域范围授权的帐户,但一次这已在您的 Google 云项目控制台中设置,您可以使用常规 Google 驱动器 API 方法将单个文件或文件夹从一个驱动器复制到另一个驱动器。
注意事项:
- 您将需要使用驱动器 API 的
delete
和 add
方法来创建 files/folders,而不是复制它们。
- 如果您希望复制文件夹中的文件,则需要将这些文件递归复制到新创建的文件夹中。
- 您可以使用 API 中
Drive: files
的 list
方法获取文件夹中的文件列表。
参考文献:
在深入研究之后,我发现了一个比使用 Google 服务帐户简单得多的解决方案。您只需要管理员凭据。
如果你在自己的 Google 中创建一个文件夹,通过 API 驱动器,你可以加载任何你想要的东西。之后,您可以更改父文件夹的权限,使目标用户成为所有者。然后你删除你自己的权限,瞧,那个文件现在属于另一个人了。
Google API Admin SDK 数据传输:可以找到 here
我已经能够成功地将所有文件从 1 个 Google 帐户复制到另一个帐户,但我只想复制 1 个特定文件。范围和权限正确。
移动所有文件成功的API请求体为:
{
"oldOwnerUserId": "{ID transferring from}",
"newOwnerUserId": "{ID Transferring to}",
"applicationDataTransfers": [
{
"applicationId": "{Google Drive Application ID}"
}
]
}
我要复制的 Google 驱动器文件夹的 ID 是 1HCrNywrvoUly_MrYndR
。我如何调整此代码以仅传输此 Google 驱动器文件夹?
或者,我可以通过 Google API 在其他用户的帐户中创建默认文件夹吗?我需要为每个创建帐户的新用户创建一组空白文件夹,但无法找到使用 Google 驱动器 API 在其他帐户中创建文件夹的方法。此解决方法是在我的 Google 驱动器中创建所有文件夹,然后使用 Admin SDK API 将完成的文件夹发送给新用户。
答案:
Admin SDK API 没有允许您将单个文件或文件夹从一个用户帐户的云端硬盘复制到另一个用户帐户的方法。为此,您必须使用 Google 驱动器 API.
更多信息:
您将需要使用服务帐户来执行此操作,要将一个应用程序授权为多个用户,您必须有一个应用程序 运行 具有域范围授权的帐户,但一次这已在您的 Google 云项目控制台中设置,您可以使用常规 Google 驱动器 API 方法将单个文件或文件夹从一个驱动器复制到另一个驱动器。
注意事项:
- 您将需要使用驱动器 API 的
delete
和add
方法来创建 files/folders,而不是复制它们。 - 如果您希望复制文件夹中的文件,则需要将这些文件递归复制到新创建的文件夹中。
- 您可以使用 API 中
Drive: files
的list
方法获取文件夹中的文件列表。
参考文献:
在深入研究之后,我发现了一个比使用 Google 服务帐户简单得多的解决方案。您只需要管理员凭据。
如果你在自己的 Google 中创建一个文件夹,通过 API 驱动器,你可以加载任何你想要的东西。之后,您可以更改父文件夹的权限,使目标用户成为所有者。然后你删除你自己的权限,瞧,那个文件现在属于另一个人了。