【问题标题】:Upload to GCP Storage signed url chunk by chunk for file逐块上传到 GCP 存储签名的 url 文件
【发布时间】:2021-10-22 10:35:54
【问题描述】:

我正在阅读这篇文章 -> upload to google cloud storage signed url with javascript

它将整个文件读入阅读器,然后似乎发送整个文件。有没有办法读取一个块,发送一个带有 GCP 存储签名 url 的块?这样,我们就不会在非常大的文件上炸内存,并且可以在上传的同时做一个进度条?

我们可以使用任何 javascript 客户端,因为我们目前不使用任何客户端。

谢谢, 院长

【问题讨论】:

    标签: google-cloud-platform google-cloud-storage


    【解决方案1】:

    resumable uploads 通过发送多个请求来工作,每个请求都包含您正在上传的对象的一部分。

    使用resumable uploads 时,您只需为启动上传的POST 请求创建和use a signed URL。此初始请求返回一个会话 URI,您可以在后续 PUT 请求中使用该会话 URI 来上传数据。由于会话 URI 充当身份验证令牌,因此 PUT 请求不使用任何签名的 URL。

    initiated a resumable upload 之后,有两种方法可以上传对象的数据:

    1. single chunk:这种方法通常是最好的,因为它需要的请求更少,因此性能更好。
    2. multiple chunks:如果您需要减少任何单个请求中传输的数据量,例如当单个请求有固定时间限制时,或者如果您不知道总大小上传开始时的上传。

    您可以使用 Cloud Storage Node.js 库。请注意,当使用签名 URL 启动可恢复的上传会话时,您需要在请求中指定带有 start 值的 x-goog-resumable 标头,否则签名验证将失败。请参阅此documentation 以获取更多示例,以及获取签名 url 以允许有限时间访问存储桶的指南。

    【讨论】:

      猜你喜欢
      • 2022-06-10
      • 2023-01-18
      • 2015-08-26
      • 2021-08-18
      • 2021-01-30
      • 2019-05-06
      • 2020-06-28
      • 2019-09-09
      • 1970-01-01
      相关资源
      最近更新 更多