在服务帐户 Google API 中下载 link 文件

Get download link of file in Service Account Google API

我使用服务帐户上传文件成功。我使用授权服务帐户上传、列出和更新文件。

我在浏览器中看不到文件。只有我的应用程序可以查看它。但是我怎样才能下载上传的文件 link 呢?

任何人都可以帮助我并给我一个下载指南link?

请记住,服务帐户不是您。服务帐户是您将文件上传到服务帐户 Google 驱动器帐户的虚拟用户。它上传的文件将归其所有。

文件资源应包含这些链接之一。您可以使用它们向其他用户显示文件。

  • Link a user to a file — webContentLink from the file resource (download)
  • Link a user to a file - webViewLink form file resource (will open in the Google drive website)

webViewLink string A link for opening the file in a relevant Google editor or viewer in a browser.

webContentLink string A link for downloading the content of the file in a browser. This is only available for files with binary content in Drive.

您可能必须让服务帐户将文件设置为 public 或与您共享,然后您才能使用这些链接中的任何一个。检查 Permissions

com.google.api.services.drive.model.File 文档 = null;

try {
     document = serrvice.files().get(googleFileId).setFields("*").execute();
} catch (IOException e) {
     e.printStackTrace();
}

然后API returns 完整的文件资源。这是用于 v3 驱动器 API.

如果您使用 v2 驱动器 api 使用:

try {
     document = serrvice.files().get(googleFileId).execute();
} catch (IOException e) {
     e.printStackTrace();
}

然后 API returns 完整的文件资源。