download.go 483 B

123456789101112131415161718192021222324252627282930
  1. package files
  2. import (
  3. "io"
  4. "net/http"
  5. "os"
  6. )
  7. // 下载文件
  8. // url - "https://example.com/file.zip"
  9. // filepath - "file.zip"
  10. func DownloadFile(url, filepath string) error {
  11. // 发送 HTTP GET 请求
  12. resp, err := http.Get(url)
  13. if err != nil {
  14. return err
  15. }
  16. defer resp.Body.Close()
  17. // 创建本地文件
  18. out, err := os.Create(filepath)
  19. if err != nil {
  20. return err
  21. }
  22. defer out.Close()
  23. // 将响应内容写入文件
  24. _, err = io.Copy(out, resp.Body)
  25. return err
  26. }