1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package utils
- import (
- "bufio"
- "errors"
- "fmt"
- "io"
- "net/http"
- "os"
- "path"
- )
- // http 获取版本信息
- // http下载
- // var appPath = "data"
- func DownloadZip(url string) error {
- res, err := http.Get(url)
- ext := path.Ext(url)
- if ext != ".zip" {
- return errors.New("非zip文件")
- }
- fileName := path.Base(url)
- if err != nil {
- fmt.Println(err)
- return errors.New("get下载失败")
- }
- defer res.Body.Close()
- reader := bufio.NewReader(res.Body)
- file, err := os.Create(fileName)
- if err != nil {
- fmt.Println(err)
- return errors.New("创建文件失败")
- }
- writer := bufio.NewWriter(file)
- _, err = io.Copy(writer, reader)
- if err != nil {
- fmt.Println(err)
- return errors.New("下载文件失败")
- }
- return nil
- }
|