【发布时间】:2012-09-14 10:28:39
【问题描述】:
我在将大型文件从我的 Linux 桌面上传到 GDrive 时遇到问题(通过使用不提供恢复甚至监控较大上传的 Grive)。
所以我想尝试使用 google-api-ruby 编写一个小脚本来完成这项工作。
随着 Google 推动文档讨论 可恢复上传 – https://developers.google.com/drive/manage-uploads#resumable – 我正在尝试使用 google-api-ruby 实现 可恢复上传并找到Google::APIClient::ResumableUploadclass。
示例对于理解这个 rubyish API 的工作原理非常有用,但示例并没有提出可恢复上传的问题。
Google::APIClient::ResumableUploadclass ment 是否用于Resumable Uploads文档正在谈论,或者更确切地说是这个 Ruby 客户端提供的 conveicence 类?
Google::APIClient::ResumableUpload 构造函数使用 Google::APIClient::Result,当我在 Google::APIClient 实例上调用 execute 或 execute! 时,我得到了它。
据我了解,execute 方法仅适用于暴露于 Discovery API 的 Google API 方法(例如 drive.files.insert)。
不幸的是可恢复上传与以下 URI 相关:
https://www.googleapis.com/upload/drive/v2/files?uploadType=resumable
并且似乎还没有成为发现的一部分,也没有集成到“更清洁”的 URI 方案中(为什么是 upload/drive 而不是 drive/upload?)。
是否可以为此 API URI 使用Google::APIClient 执行 方法以便将其与Google::APIClient::ResumableUpload 结合起来,或者我是否必须自己实现可恢复上传 (例如使用em-http-request)?
【问题讨论】:
标签: ruby google-drive-api grive