当前位置:   article > 正文

Vue中实现视频的分片上传_vue前端视频分片上传

vue前端视频分片上传

1、选择本地视频,获取视频实体

第一步::auto-upload="false";:on-change="videoSaveToUrl"

  1. <el-upload
  2. drag
  3. action
  4. :auto-upload="false"
  5. :on-change="videoSaveToUrl"
  6. :accept="'video/*'"
  7. >
  8. </el-upload>

第二步:在videoSaveToUrl方法中获取视频实体,并存放在data数据的this.video中

  1. videoSaveToUrl(event) {
  2. this.video = event.raw;
  3. },

2、单击“上传”按钮,触发分片上传方法

  1. import { uploadByPieces } from "./JS/utils"; //引入uploadByPieces方法
  2. processButtonClick() {
  3. uploadByPieces({
  4. file: this.video,//视频实体
  5. pieceSize: 5, //分片大小
  6. success: data => {
  7. console.log("分片上传视频成功");
  8. },
  9. error: e => {
  10. console.log("分片上传视频失败");
  11. }
  12. });
  13. }

3、分片上传方法(utils.js代码中的uploadByPieces方法)

第一步:获取分片上传过程中会使用到的变量

  1. // 上传过程中用到的变量
  2. let fileMD5 = ''// 总文件列表
  3. const chunkSize = pieceSize * 1024 * 1024 // 5MB一片
  4. const chunkCount = Math.ceil(file.size / chunkSize) // 总片数
  5. readFileMD5() // 开始执行代码

第二步:readFileMD5方法:首先获取文件的MD5值,并通过网络请求uploadCheckAxios来检查是否之前已上传过该视频(每个文件的MD5值是唯一的),如果已经上传过,则后台直接返回视频在服务器上的URL,如果没有上传则进行分片上传,调用readChunkMD5() 方法

  const readFileMD5
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/130167
推荐阅读
相关标签
  

闽ICP备14008679号