当前位置:首页 > Web开发 > 正文

自己写大文件上传

2024-03-31 Web开发

在之前大文件的上传我都是通过FilderReader获取文件的base64然后转为Blob在一段一段截取上传,但是这个要领有个毛病就是很大的文件的时候获取文件的base64会使整个浏览器瓦解卡死,后面我去看了一下百度网盘的上传道理

技术图片

我们可以看到百度是通过类似表单提交的方法上传文件的,这样子似乎不需要把文件转化为base64减少了浏览器的开销。阿谁让我们来动手做一个大文件上传吧

技术图片

这里用input标签来获取需要上传的文件

获取到file东西以后我们就可以得到

技术图片

这样一个东西里面就是文件的巨细名字等信息

接下来我们可以通过size判断文件的巨细,,对大文件进行切割上传措置惩罚惩罚

大文件上传的话我们需要报告后端切割的总公块数和当前是那一块这样子后端可以对数据进行措置惩罚惩罚

技术图片

这里我们通过step控制切割的巨细,star和end暗示该次上传的文件开始个结束的数据位置,totalindex是总共切割的个数,index是当前上传的个数

技术图片

以上就是我的大文件上传的要领~~~~

快过年了,在这里提前祝大家新年快乐!!!!!!!!!!!!

按照百度网盘的上传道理,本身写大文件上传

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/31473.html