okhttp-OkGo icon indicating copy to clipboard operation
okhttp-OkGo copied to clipboard

重大bug,对于不支持断点下载的url就无法下载了

Open blueskky opened this issue 5 years ago • 4 comments

http://ft.hner.cn:20002/cms-ft/download?fid=863018285669810176 比如这个url,url不支持断点下载,用了这个库就不能正常下载了,报 breakpoint file has expired! 的错误。能不能在请求中根据返回的头判断,如果支持的启用断点下载,不支持的全量下载?

blueskky avatar Jun 23 '19 06:06 blueskky

task.progress.totalSize = size.toLong() 自己设置下载的总长度就可以了。 我是这么解决的。

androidwangchong avatar Jun 27 '19 03:06 androidwangchong

可是对于不支持断点的url,头部不会返回content-length,是不知道总长度的啊。后来找了个库 OkDownload,可以支持,但是又遇到一个问题,有些url头部有Transfer-Encoding →chunked,照理说是可以分快下载的,但是每次都全量返回,OkDownload也报错了,坑真多啊

blueskky avatar Jun 27 '19 05:06 blueskky

可是对于不支持断点的url,头部不会返回content-length,是不知道总长度的啊。后来找了个库 OkDownload,可以支持,但是又遇到一个问题,有些url头部有Transfer-Encoding →chunked,照理说是可以分快下载的,但是每次都全量返回,OkDownload也报错了,坑真多啊

是的,不支持断点的url,content-length是没有返回,但我们在文件列表里有返回文件的长度,所以在点击下载的时候就设置totalSize。

androidwangchong avatar Jun 27 '19 05:06 androidwangchong

task.progress.totalSize = size.toLong() 自己设置下载的总长度就可以了。 我是这么解决的。

你的size.tolong,size是什么的size

hyc429559515 avatar Jun 30 '20 03:06 hyc429559515