npm install
npm start
----客户端-----------------------------------------------------服务端------
- -
- -生成MD5- -
- -
- -MD5- -发送MD5> -------------------- -
- - - -
- -上传成功end- <是- -检测文件是否存在 - -
- -断点续传检测 - -
- ------ <-文件不存在(返回需要继续上传的分片)-- -无上传记录返回0分片 - -
- -上传- -有则返回上次断点位置- -
- - - -------------------- -
- - - -
- -若 - ->->------------ -
- -还有分片 - -上传分片 - -
- -继续上传 - -参数 - -
- - - - md5 - -
- -否则 - - total - -
- -请求 - - current- -
- -合并文件 - - file - -------------------- -
- - - ----------------> - - -
- - - -保存当前分片 - -
- - - - - -
- ------ <--返回下一个分片位置--- -------------------- -
- -
- -
- ---------- -
- - 请求 - --------- -
- - 合并 - -md5-> -合并文件- -
- - 文件 - --------- -
- ---------- -
- -
----客户端-----------------------------------------------------服务端------
- 适合小文件上传
- 大文件上传中断后需要重新上传
- http请求有超时时间、超时就上传失败,需要服务端和客户端双重设置
- 可以实现断点续传
- 利用md5实现秒传功能(缺陷:md5值不能唯一对应文件)
- 客户端校验md5值
- 请求发送MD5值
- 服务端返回md5校验结果(文件已存在,断点续传,文件不存在)
- 循环上传文件分片,服务端循环保存
- 上传完毕,发送上传完毕确认
- 服务端合并文件
- 下载并查看
- 完成