You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过带权限参数的URL自动下载Google Cloud存储文件?curl下载文件损坏求助

解决Google Cloud存储预签名URL自动下载后文件损坏的问题

问题根源

你添加的content-type: multipart/form-data和Authorization: Bearer Token请求头完全多余——GCS的预签名URL已经包含GoogleAccessId、Signature、Expires这些认证参数,不需要额外的Bearer令牌;而且GET请求也不需要multipart类型的Content-Type,这些多余的头会干扰服务器返回正确的文件内容,直接导致下载的文件损坏。

修复后的curl命令

直接用最简命令即可,去掉所有多余请求头:

path_with_my_curl_file "https://storage.googleapis.com/..." -o "C:\Users\MyUser\Downloads\file.pdf"
  • 说明:curl默认使用GET请求,无需-X GET参数;预签名URL本身已经完成身份验证和权限校验,不需要额外添加Authorization头。

额外排查技巧

  • 验证文件完整性:下载完成后,对比浏览器手动下载的文件和curl下载文件的MD5哈希值,确认是否一致。Windows CMD中可使用以下命令查看哈希:
    certutil -hashfile "C:\Users\MyUser\Downloads\file.pdf" MD5
    
  • 确保URL完整:检查复制的预签名URL是否完整无截断;如果URL包含&等特殊字符,用双引号包裹可避免CMD解析错误。
  • 跟随重定向(可选):如果遇到下载失败,可添加-L参数让curl自动跟随重定向:
    path_with_my_curl_file -L "https://storage.googleapis.com/..." -o "C:\Users\MyUser\Downloads\file.pdf"
    

内容的提问来源于stack exchange,提问作者Feryohan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 08:42:11