上传图片至OSS

1.配置参数

let param = {
          region: 'XXXXXX', 
          accessKeyId: 'XXXXXX',
          accessKeySecret:'XXXXXX',
          bucket: 'XXXXXX'
        };
 let client = new OSS(param);

2.获取图片

 const files = document.getElementById(this.input)
        if (files.files) {
          const fileLen = document.getElementById(this.input).files
          if(fileLen[0].size >1024*1024*3){
            this.$Message.warning('图片应小于3M');
            document.getElementById(this.input).value= '';
            return;
          }
          if(fileLen[0].type != 'image/jpeg' && fileLen[0].type != 'image/png'){
            document.getElementById(this.input).value= '';
            this.$Message.warning('请选择格式为*.jpg、*.png的图片');
            return;
          }

3.上传

this.percentage = 0;
for (let i = 0; i < fileLen.length; i++) {
    const file = fileLen[i]
    // 随机命名
    let d = new Date();
    let random_name = d.getFullYear() +'-' + (d.getMonth() + 1) +'-' + 
      d.getDate()+'/oss_pic_' + new Date().getTime() + '.' + file.name.split('.').pop()
    // 上传
    client.multipartUpload(random_name, file, {
       progress: function* (percentage, cpt) {
          // 上传进度
          this.percentage = percentage
        }
     }).then((results) => {
    // 上传完成
    const url = 'http://XXXXXXXX/'+ results.name; 
    this.url = url; 
        // this.$store.dispatch("changeUrl", this.url); 
        }).catch((err) => { console.log(err) }) 
    } 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值