客户端:

//const (
// UA = "Golang Downloader from Kejibo.com"
//)
func DownloadController(ctx *gin.Context) { f, err := os.OpenFile("./file.exe", os.O_RDWR|os.O_CREATE, ) //O_RDWR|O_CREATE,也就是文件不存在的情况下就建一个空文件,因为windows下还有BUG,如果使用这个O_CREATE,就会直接清空文件,所以windows不用这个标志,你自己事先建立好文件。
if err != nil {
panic(err)
}
stat, err := f.Stat() //获取文件状态
if err != nil {
panic(err)
}
f.Seek(stat.Size(), ) //把文件指针指到文件末,当然你说为何不直接用 O_APPEND 模式打开,没错是可以。我这里只是试验。
//f.Seek(int64(os.O_APPEND), 0)
url1 := "http://dl.google.com/chrome/install/696.57/chrome_installer.exe"
var req http.Request
req.Method = "GET"
//req.UserAgent = UA //客户端信息字符串,不过我加上UserAgent,一直报错,不知道怎么回事,暂时不用它
req.Close = true
req.URL, err = url.Parse(url1)
if err != nil {
panic(err)
}
header := http.Header{}
header.Set("Range", "bytes="+strconv.FormatInt(stat.Size(), )+"-")
req.Header = header
resp, err := http.DefaultClient.Do(&req)
if err != nil {
panic(err)
}
written, err := io.Copy(f, resp.Body)
if err != nil {
panic(err)
}
println("written: ", written)
}

另外一个例子:

传送门:https://blog.csdn.net/luckytanggu/article/details/79830493

无断点续传:https://www.jianshu.com/p/b49cc19d26f0

最新文章

  1. Unit Testing with NSubstitute
  2. 设计模式之美:Bridge(桥接)
  3. coco2dx加载网络图片并保存
  4. FastReport处理空日期
  5. Linux客户/服务器程序设计范式1——并发服务器(多进程)
  6. Scala中的If判断&While&For循环
  7. Linux安装oracle 10g常见问题之——OUI-25031
  8. HDU 5903 - Square Distance [ DP ] ( BestCoder Round #87 1002 )
  9. 反思java web的发展
  10. 注意,WebDeploy服务会占用80端口。(Windows关闭了IIS,80端口任然被占用)
  11. React 精要面试题讲解(五) 高阶组件真解
  12. Python内置函数(65)——type
  13. C# 换行
  14. 500G !!史上最全的JAVA全套教学视频网盘分享 (JEECG开源社区)
  15. 移动端根元素(html)的设置
  16. java:根据利润表计算奖金所得
  17. jvm虚拟机---执行引擎子系统
  18. GEEK-2018之隐藏在混乱之中的绝密情报 writeup
  19. HDU 5067 Harry And Dig Machine(状压DP)(TSP问题)
  20. 使用DOM创建xml文件

热门文章

  1. iview 验证 trigger: 'blur,change', 同时加两个,省的每次还想input 还是 select
  2. HTML之网页的基本介绍
  3. win10搭建Java环境
  4. CPP-网络/通信:COM
  5. 运用模逆运算(同余方程)来解决Matlab课上的一道思考题
  6. CS193p Lecture 6 - UINavigation, UITabBar
  7. 【网络流】[USACO4.2]草地排水Drainage Ditches
  8. react 组件架构
  9. python--操作系统介绍,进程的创建(并发)
  10. Day05基本运算符,if判断和while循环