你不能我知道。来自docs,
获得文件修订的列表后,可以通过使用参数alt = media调用revisions.get方法来下载任何修订的内容。无法下载Google文档,表格和幻灯片的修订版。
但我想根据日期下载(pdf)同一Gdoc文件的不同版本。在Drive Web应用程序中,您可以查看版本并打印它们或将版本恢复到头部。有没有办法实现使用API?你能恢复一些版本吗?然后你可以导出文件。
我搜索了互联网,但找不到解决方法。
我正在使用java客户端api,当我尝试发出媒体请求时,它会给我这个。
{
"code" : 403,
"errors" : [ {
"domain" : "global",
"location" : "alt",
"locationType" : "parameter",
"message" : "Only files with binary content can be downloaded. Use Export with Google Docs files.",
"reason" : "fileNotDownloadable"
} ],
"message" : "Only files with binary content can be downloaded. Use Export with Google Docs files."
}
但是如果你能回答任何其他API,我可以弄明白。
答案 0 :(得分:2)
看起来像v3特定问题。我建议使用v2进行该特定呼叫。请参阅https://developers.google.com/drive/v2/reference/revisions#resource,您将在其中看到修订资源包含一个名为exportLinks的数组。在其中你应该找到一个元素{" pdf":" https://xxxxxxxx"}。在该URL上进行经过身份验证的GET。
imho,提供的库会导致他们解决的问题。即使完全支持v2 API,这也是库掩盖对v2 API的访问的一个例子。因此,在您的代码中,您需要从驱动器服务对象中提取访问令牌,将其设置为httpAuthorization: Bearer 4a343234we43w43w44
标头,然后进行两次GET REST调用以获取修订列表,然后获取与之对应的URL pdf在exportLinks。