vue+element+oss实现前端分片上传和断点续传
纯前端实现: 切片上传
断点续传
。断点续传
需要在切上上传的基础上实现
前端之前上传oss,无需后端提供接口。先上完整代码,直接复制,将new oss里的参数修改成自己公司oss相关信息后可用,如遇问题,请继续往下看。
oss官方文档
https://help.aliyun.com/document_detail/111268.html?spm=a2c4g.11186623.6.1111.5a583a07lknruo
代码允许所需环境:vue + element + ali-oss
安装ali-oss: cnpm install ali-oss
代码实现
如果相关依赖已经安装完毕,但是上述代码操作时仍有报错,请检查以下问题
上述信息放在前端会存在安全问题,如在项目中使用尽量由后端接口提供。或使用sts临时授权。demo中没有,请自行探索。
https://www.alibabacloud.com/help/zh/doc-detail/100624.htm?spm=a2c63.p38356.879954.5.7a234d04iqpf5i#concept-xzh-nzk-2gb
配置项中信息可以问后端或者运维,bucket的名字必须是你oss上存在的且你有权限访问的,不然会一直报 pleasr create a busket first
或者一直报跨域
当遇到跨域时,或者遇到报报错信息中有etag
时,请检查oss配置,然后找有oss服务器权限人员进行配置:
window.addeventlistener('online', this.resumeupload)
用于监听网络状态(断网状态和连网状态),实现断网后恢复网络自动上传就必须设置监听。
window.removeeventlistener('online', this.resumeupload)
取消监听。如果不设置取消监听,联网状态下会一直处于进行上传,因为一直满足监听条件`
'content-type': this.file.type`的作用:加了在文件上传完毕后,访问文件链接时可以直接查看,否则会直接下载。
文件上传完毕后查看,可以去resule.res.requesturls中去取,但是注意要去点地址后面的 ?uploadid=******
上述代码只是demo,代码以实现功能为主,并不严谨,请自行完善。
到此这篇关于vue+element+oss实现前端分片上传和断点续传的文章就介绍到这了,更多相关vue 分片上传和断点续传内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!