1.安装 npm install ali-oss
2.input上传
<input class=“upload” ref=“int” @change=“afterRead” type=“file”>
3.获取file对象
afterRead(event) {
this.getFile(this.$refs.int.files[0])
},
4.async getFile(res, file) {
var OSS = require(‘ali-oss’); // 引入ali-oss
let stsData = await getSts() // 获取oss配置
var parseMast = {
bucket: ‘’, // 这个可以找开通OSS的管理员拿,或者接口返回获取
region: ‘’, // 同上
accessKeyId: stsData.data.AccessKeyId, // 从接口返回的数据获取
accessKeySecret: stsData.data.AccessKeySecret, // 同上
stsToken: stsData.data.SecurityToken,
secure: true
}
var client = new OSS(parseMast); // 调用OSS依赖
let type = file.name
var that = this;
let date = new Date
let dateFormat = moment(date).format('YYYY-MM-DD')
client.multipartUpload('oss/cpc/article/' + dateFormat + '/' + type, file, {
progress(p) { // 获取上传进度,上传进度为0 - 1, 1为上传100%
if (p == 1) {
that.progressWord = '上传完成';
}
},
parallel: 4,
// 设置分片大小。默认值为1 MB,最小值为100 KB。
partSize: 1024 * 1024,
})
.then(res => {
console.log(res.res.requestUrls[0]);//上传成功
})
.catch(err => {
console.log(err);
});
},