您可以通过REST API将多个文件同时上传到Google云端硬盘吗?

时间:2019-05-10 10:54:51

标签: google-drive-api

rclone的Google驱动器后端经常需要使用的功能是能够一次使用多个块上传文件,以加快处理速度。 S3 / B2 / Box / etc支持此功能,因此请求Google云端硬盘似乎很明显。

我能找到的最接近的东西是Google Drive v3 API resumable upload功能。

您可以将其与多个块一起使用。我已经在rclone中使用了此API,但是一次只能使用一个。

仔细阅读文档,我认为它不能一次上传多个块-它要求将块按顺序上传,但是我很高兴被证明是错误的!

  

要分多个文件上传文件:

     
      
  1. 创建对可恢复会话URI的PUT请求。
  2.   
  3. 添加块的   数据发送到请求主体。以256 KB的倍数创建块(256 x   大小为1024字节),除了完成   上传。保持块大小尽可能大,以便上传   高效。
  4.   
  5. 添加以下HTTP标头:

         
        
    • 内容长度。设置为当前块中的字节数。
    •   
    • 内容范围:设置为显示要上传的文件中的哪些字节。   例如,内容范围:字节0-524287 / 2000000表示您   在2,000,000字节中上传前524,288字节(256 x 1024 x 2)   文件。
    •   
  6.   
  7. 发送请求,并处理响应。
  8.   
     

如果上传请求被中断,或者您收到5xx   响应,请按照恢复中断的上传中的步骤进行操作。

     
      
  1. 对文件中每个剩余的块重复步骤1到4。使用   响应中的范围标头,以确定从下一个位置开始   块。不要假设服务器收到了所有发送的字节   先前的请求。
  2.   
     

整个文件上传完成后,您会收到200 OK或201   创建的响应以及与   资源。

如果该API无法做到这一点,那么还有另外一种可以做到吗?

0 个答案:

没有答案