当前位置: 首页 > article >正文

利用Minio实现大文件分片上传、断点续传、秒传

利用Minio实现大文件分片上传、断点续传、秒传

demo来自B站蜗牛哥,gitee仓库:minio-upload: 使用vue3 elementplus minio springboot 实现大文件的分片上传、断点续传、秒传的功能demo - Gitee.com

后端暴露端口方法

  1. 获取上传进度,identifier为前端计算的md5值

image-20250209170449044

  1. 创建上传任务

    前端传递的POST对象:

    image-20250209170738840

image-20250209170555784

  1. 获取某个文件的某个分片的地址

image-20250209171014070

  1. 对分片进行合并

image-20250209171122160

具体步骤:

  1. 前端计算文件md5

  2. 前端调用后端taskInfo端口方法,传md5进行查询,md5即为文件的身份证,后端进入数据库桶记录表进行查询并返回,前端如果发现返回体不为空,说明后端已经存在这个文件,则没必要再次进行上传,直接用已有的。

  3. 如果查询到minio桶中没有对应的文件,则调用后端initTask方法创建任务进行文件上传

    image-20250209172332902

后端的initTask内部代码:

image-20250209175943979

  1. 等待文件上传后,前端调用后端merge方法对分片进行合并。

image-20250209180642922

此demo会将minio地址等信息暴露给前端,适用于内部环境,需要对方法进行优化,但是里面的文件上传方法值得借鉴。


http://www.kler.cn/a/541338.html

相关文章:

  • Windows系统下设置Vivado默认版本:让工程文件按需打开
  • 查询语句来提取 detail 字段中包含 xxx 的 URL 里的 commodity/ 后面的数字串
  • Docker安装Redis
  • 项目质量管理体系及保证措施
  • 【C++】命名空间
  • 【Qt 常用控件】输入类控件1(QLineEdit和QTextEdit 输入框)
  • 5G无线网络技术深度解析
  • 游戏引擎学习第94天
  • 【系统架构设计师】体系结构文档化
  • 8种方法解决电脑QQ能上网但是浏览器不能上网问题
  • Android车机DIY开发之软件篇(十二) AOSP12下载编译
  • windows server独立部署Qwen2.5-vl-7B
  • Web3 的未来:从技术变革到社会经济影响的深度思考
  • 13.6 基于 LangChain架构优化实战:OpenAI-Translator翻译系统重构与10倍效率提升秘籍
  • vue基础(四)
  • 综合评价 | 基于随机变异系数-TOPSIS组合法的综合评价模型(Matlab)
  • python-leetcode 23.反转链表
  • repo使用介绍
  • Python:凯撒密码
  • CodeGeeX4+IDEA辅助开发工具
  • android的ViewModel这个类就是业务逻辑层吗
  • XML DOM
  • 深度学习01 神经网络
  • 项目实践之----贪吃蛇小游戏
  • 【Flink源码分析】6. Flink1.19源码分析-Flink底层的异步通信
  • 以讲故事手法在软文营销中运用2+1链动模式AI智能名片S2B2C商城小程序的策略研究