JS直传图片到阿里云oss服务器,不占用服务器带宽

 <script type="text/javascript">
    var client = new OSS.Wrapper({
      region: "host",
      accessKeyId: "key",/*这两者到阿里云控制台获得*/
      accessKeySecret: "Secret",
      bucket: "bucket"/*装图片的桶名*/
    });
    document.getElementById('fileName').addEventListener('change', function (e) {
      var file = e.target.files[0];
      var storeAs = "headImg/"+getUuid()+".jpg";
      console.log(file.name + ' => ' + storeAs);
      client.multipartUpload(storeAs, file).then(function (result) {
        var uploadPath="http://"+oss.bucket+".oss-cn-shenzhen.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
        console.log(uploadPath);
        $("[name=img]").attr("src",uploadPath);
      }).catch(function (err) {
        console.log(err);
      });

      function getUuid(){
      var len=32;//32长度
      var radix=16;//16进制
      var chars='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');var uuid=[],i;radix=radix||chars.length;if(len){for(i=0;i<len;i++)uuid[i]=chars[0|Math.random()*radix];}else{var r;uuid[8]=uuid[13]=uuid[18]=uuid[23]='-';uuid[14]='4';for(i=0;i<36;i++){if(!uuid[i]){r=0|Math.random()*16;uuid[i]=chars[(i==19)?(r&0x3)|0x8:r];}}}
      return uuid.join('');
}
    });

这里图片的名称采用随机生成 ,因为不能重复。

猜你喜欢

转载自wgy7945925.iteye.com/blog/2338628