前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >代码示例 | 断点续传(大文件的下载)后台功能实现

代码示例 | 断点续传(大文件的下载)后台功能实现

作者头像
码神联盟
发布2020-02-14 16:18:31
3K0
发布2020-02-14 16:18:31
举报
文章被收录于专栏:码神联盟码神联盟

点击“码上有猿”关注公众号获取最新信息

版权声明:版权所有,未经许可,不得转载,转载或者引用本文内容请注明来源及原作者

文章福利

掌握:思想、方法

收益:发现问题、分析问题、定位问题、解决问题

案例分析

某网盘

  • 可以随时暂停、启动
  • 多任务
  • 下载过程中、由于某一些特殊原因(宕机、断电、断网等),导致文件下载失败
    • 再一次下载的时候,还可以继续在原来的基础上下载
    • 当上一次下载的20%,再一次下载的时候,从20%继续下载
  • 本地都会产生一个临时数据文件
    • 中断后,文件不会消失

断点续传

原理:

实现:

长连接:socket、urlconnection、http、okhttp、httpclient

思路:

  • 指定URL
  • 建立一个目录(指定临时文件)
  • 从服务器中获取对象流
  • 告诉服务器从哪个位置下标,开始发送数据
  • 将对象流对象,写入到临时文件中
  • 根据读取到的对象流长度来进行定义
  • 如果长度有值,则进行写入
  • 如果长度=-1,则无需进行写入操作

代码:

HTTP扩展

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码上有猿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档