用户上传的文件比较大,有20G旁边,直接用HTML传的话随意马虎失落败,做事器也随意马虎出错,须要分片,分块,分割上传。
也便是将一个大的文件分成多少个小文件块来上传,其余便是须要实现秒传功能和防重复功能,秒传便是用户如果上传过这个文件,那么直接在数据库中查找记录就行了,不用再上传一次,节省韶光,实现的思路是对文件做MD5打算,将MD5值保存到数据库,算法可以用MD5,或者CRC,或者SHA1,这个随便哪个算法都行。

分片还须要支持断点续传,现在HTML5虽然供应了信息记录功能,但是只支持到了会话级,也便是用户不能关闭浏览器,也不能清空缓存。
但是有确当局单位上传大文件,传了一半放工了,来日诰日连续传,电脑一关结果进度信息就丢失了,这个是他们的一个痛点。

切片的话还有一点便是在做事器上合并,一个文件的所有分片数据上传完后须要在做事器端进行合并操作。

html5页面源码用HTML5实现分片上传GB级年夜文件源代码 Java

功能的话支持20G文件上传和续传,支持秒传,支持文件夹上传,支持在做事端保存文件夹层级构造,支持将文件夹层级构造信息保存到数据库中,支持下载时能够将文件夹层级构造下载下来,支持下载文件夹,下载文件夹支持断点续传,支持VUE2,VUE3,React,支持IE,Chrome和信创国产化环境,比如银河麒麟,统信UOS,龙芯,支持加密传输,包括加密上传,加密下载,加密算法支持国密SM4,支持云工具存储,比如华为云,阿里云,腾讯云,七牛云,AWS,MinIO,FastDFS,须要供应手机,QQ,微信,邮箱等联系办法,供应724小时技能支持,供应长期技能支持和掩护做事,供应远程1对1技能辅导,供应二次开拓辅导,供应文档教程,供应视频教程。

1.下载示例

https://gitee.com/xproer/up6-vue-cli

将up6组件复制到项目中

示例中已经包含此目录

1.引入up6组件

2.配置接口地址

接口地址分别对应:文件初始化,文件数据上传,文件进度,文件上传完毕,文件删除,文件夹初始化,文件夹删除,文件列表

参考:http://www.ncmem.com/doc/view.aspx?id=e1f49f3e1d4742e19135e00bd41fa3de

3.处理事宜

启动测试

启动成功

效果

数据库