使用服务帐户驱动 API 访问文档

Drive API access to document with service account

我正在尝试通过服务帐户使用 Google 驱动器 Java API 访问 "google.com" 域下的电子表格。我需要导出文档中包含的几个工作表。

我已经能够创建和使用服务帐户(通过 Java API 使用)但我不确定如何进行访问,或者我是否正在尝试do 甚至是可行的。我看到了以下页面:https://developers.google.com/drive/web/delegation 但我正在使用的服务帐户似乎不太可能被授予对 google.com 公司域的访问权限。我们的帐户联系人 Google 建议我们查看论坛以获取一些建议。

鉴于此,我有几个关于方法的问题:

我猜我们需要复制文档,但我想确定一下,并确保我理解 API 并正确访问。

谢谢!

您有权访问该文件吗?尝试使用方法 files.get https://developers.google.com/drive/v2/reference/files/get 如果您收到 200 响应则您可以访问,尝试找到参数 exportlinks 使用这些链接,您可以将文件导出为不同的格式。 否则你做不到。

  • 只有被授予文件访问权限的人才能访问它。在域管理员批准授权的服务帐户的情况下,服务帐户可以模拟该域中的人。如果它模拟的用户无权访问某个文件,则服务帐户也无权访问。

  • 导出文件最好用驱动器 API,正如你提到的电子表格 API 是管理电子表格的内容。

  • 如果想在不修改原文件的情况下修改信息,可以。

希望这对您有所帮助。

您还必须授予您要访问的驱动器文件中的服务帐户。只需 Share 您想要使用 EMAIL ADDRESS 访问的文档,该文档出现在 Google 开发者控制台(例如 XXXXX@developer.gserviceaccount.com