【后端开发】文件分片上传以及断点续传的实现(在同一个文件实现写入)

4 阅读1分钟

一 前言

无论是前端开发还是后端开发,肯定都做过文件上传的功能需求~这是非常基础的需求开发。但你有没有想过,一个文件如果在上传的过程中,因为网络等各种原因中止上传了,这个时候你要从头开始传起吗?还有,如果一个文件很大,普通的文件上传是不是非常没有效率呢?这个时候,我们就需要思考分片上传以及断点续传的实现。

二 分片上传以及断点续传的应用场景

分片上传:大文件上传,传输速度慢。将大文件按一定的字节分割成小文件上传

断点续传:分片上传的延续,适用于因为网络原因而导致文件传输中断的情况,重新上传文件不用从头开始

三 前后端方案的实现

本方案基于前端串行的情况下进行操作,不需要创建临时文件夹,避免了后端把临时文件夹的分片合并成大文件的耗时,是针对同一个文件进行写入操作,在写入的过程中,文件后缀会暂时加上upload,当文件全部写入,改回原来的文件名。

image.png