2016-12-09 54 views
1

我想弄清楚如何通过Google Drive API V3直接在浏览器中下载大型二进制文件。Google Drive Rest API V3下载大文件(> 25MB)

按照Drive API manual有三种不同的方式通过API下载文件:

  1. 下载文件 - files.get与alt=media文件资源
  2. 下载和导出谷歌文档 - files.export
  3. 将用户链接到文件 - webContentLink来自文件资源

选项(2)不适用于我的情况是文件不是Google Docs文件,Option(3)不是解决方案,因为这会将用户重定向到Google Drive无法扫描大文件中的病毒的警告。

这给我留下了选项(1)。这工作几乎完美,我可以成功地通过ALT =媒体属性,例如将用户重定向到文件:

https://www.googleapis.com/drive/v3/files/0By3zfuC927VWRkJnV3g2aDY4UHM?alt=media&access_token=ya29.XXXXXXXXXXXXX

这虽然会启动下载的浏览器,它将被命名为该文件的ID而不是原始文件名。这很混乱。

所以我的问题是:如何通过Google API使用正确的文件名下载大文件(> 25MB,无病毒警告)?

注1:下载通过卷曲的文件服务器之前和 发送输出到浏览器是不是在我的情况选择。

备注2:此外,文件不能共享。这就是我使用API​​的原因。

回答

1

AFAIK,目前不支持无法共享的文件,也不支持Google云端硬盘中的Web托管支持。 (参考:here

您可能要检查下面的SO职位信息,给出的答复:

+0

嗯,这**可能* *如我在我的问题中显示的那样,在虚拟主机支持已被弃用后,通过API下载大型(非共享)文件。但是,该文件只能以文件的ID而不是文档的标题/名称命名。所以问题不在于如何下载这些大文件,而是如何用正确的文件名下载它们。 –

相关问题