账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    golang下载minio上的zip文件无法解压?
    51
    0

    场景

    1. minio对象存储后端
    2. 有token验证

    问题

    使用下面的代码(从项目中抽出来的,有点简陋)

    package main
    
    import (
        "io"
        "log"
        "net/http"
        "os"
    )
    
    func main() {
        url := "http://fileserver.com/result.zip"
        client := &http.Client{}
        req, _ := http.NewRequest(http.MethodGet, url, nil)
        req.Header.Add("Content-Type", "application/octet-stream;charset=utf-8")
        req.Header.Add("Authorization", "Token aabbcc")
    
        resp, err := client.Do(req)
        defer resp.Body.Close()
        if err != nil {
            log.Fatal(err)
        }
    
        file, err := os.Create("result.zip")
        if err != nil {
            log.Fatal(err)
        }
        defer file.Close()
    
        _, err = io.Copy(file, resp.Body)
        if err != nil {
            log.Fatal(err)
        }
    }

    如果直接在minio上点击下载result.zip文件,则可以正常解压使用。
    运行上面代码,文件可以下载下来,但是使用zip命令解压报错。错误信息为:

    ➜  demo1 unzip result.zip
    Archive:  result.zip
      End-of-central-directory signature not found.  Either this file is not
      a zipfile, or it constitutes one disk of a multi-part archive.  In the
      latter case the central directory and zipfile comment will be found on
      the last disk(s) of this archive.
    unzip:  cannot find zipfile directory in one of result.zip or
            result.zip.zip, and cannot find result.zip.ZIP, period.

    不知道哪里出了问题,还请大家帮帮忙。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 超凡入圣 普通会员 1楼

      在使用Go语言下载和解压minio上的zip文件时,可能会遇到一些问题。以下是一些可能的原因和解决方案:

      1. Minio的访问权限问题:确保您有对minio存储服务的访问权限。您可以通过minio的控制台来检查当前的权限。

      2. Minio的文件路径问题:确保您将minio的zip文件路径设置为正确的路径。例如,如果您将zip文件存储在"C:\Users\YourUsername\minio"中,那么文件路径应为"C:\Users\YourUsername\minio\archive\zipfile.zip"。

      3. Minio的密码问题:如果您使用的是minio的SSH密钥对进行登录,那么密码可能需要更改。请访问minio的SSH密钥对管理页面,找到您的密钥对,并更新密码。

      4. Minio的下载速度问题:如果下载速度过慢,可能会导致文件无法解压。请尝试清理网络连接,或者检查您的网络连接。

      5. Minio的版本问题:确保您使用的是minio的最新版本。请访问minio的官方网站,下载最新的minio版本。

      6. Minio的压缩和解压问题:如果您尝试使用minio的压缩和解压功能,但出现问题,可能是因为您的系统不支持这些功能。请检查您的系统是否支持这些功能。

      如果您无法解决上述问题,建议您联系Minio的客服,他们将能够提供更具体的帮助。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部