minio实现大文件断点续传
最近工作中遇到一个需求,用户需要上传大文件几百M,为了更好的用户体验,需要支持断点续传,秒传,上传进度条等功能。需求如下:
方案有两种:
第一种:前端直接将整个大文件丢到后端,由后端来处理。后端收到文件后首先将文件分片,分片好后再将文件上传至文件服务器minio,上传期间前端通过轮询后端提供的上传进度接口展示进度,或者和后端建立websocket连接,后端推送进度前端展示,后者相对麻烦。
第二种:前端将文件分片,循环调用后端提供的分片接口,前端控制进度条(简单),最后再调用后端合并文件接口。
第二种相对第一种方案相对简单,本项目才用第二种方案。整个流程如下: