我的业务应用程序需要从 GCS 存储桶下载文件。文件大小也可以以 GB 为单位。是否有类似 ResumableUpload 的下载类?我想使用 ResumableDownload,这样在下载文件时发生任何中断时,它可以开始下载文件的其余部分。
答案1
答案2
GCS 下载方法(XML 和 JSON API 均适用)Range
按照以下要求实现标头:RFC 7233 第 3 节。
这意味着,如果您知道已下载了多少字节,则可以随时重新开始下载。
此外,您还可以部分下载文件。这样,您甚至可以分片下载,然后组成完整的文件。
一个例子:
BUCKET=<YOUR_BUCKET_ID>
echo "Hello World!">test.txt
gsutil cp test.txt gs://$BUCKET
curl https://www.googleapis.com/storage/v1/b/$BUCKET/o/test.txt?alt=media -H'Range: bytes=6-10' -H"Authorization: Bearer $(gcloud auth print-access-token)"
此示例应仅返回单词World
。
不确定如何在 c# 中实现这一点,如对另一个答案的评论中所述,但 GCS 确实支持部分下载。有关更侧重于编程的实现细节,我建议您在 StackOverflow 中提问。