鍍金池/ 問(wèn)答/Java  Python  數(shù)據(jù)庫(kù)  HTML/ JavaScript上傳圖片路徑過(guò)長(zhǎng)

JavaScript上傳圖片路徑過(guò)長(zhǎng)

我在網(wǎng)上看到一種用vue寫(xiě)的上傳圖片的代碼

createImage(file){
        if(typeof FileReader==='undefined'){
          alert('您的瀏覽器不支持圖片上傳,請(qǐng)升級(jí)您的瀏覽器');
          return false;
        }
        var image = new Image();         
        var vm = this;
        var leng=file.length;
        for(var i=0;i<leng;i++){
          var reader = new FileReader();
          reader.readAsDataURL(file[i]); 
          reader.onload =function(e){
            vm.imageDataList.push(e.target.result);
            vm.imagesNum=vm.imageDataList.length;                                    
          };                 
        }

可是這種方法傳到數(shù)據(jù)庫(kù)的圖片路徑很大,超出了varchar的長(zhǎng)度。我看網(wǎng)上說(shuō)數(shù)據(jù)類(lèi)型用text又不好。請(qǐng)問(wèn)有沒(méi)有其他上傳圖片的方式,代碼短一點(diǎn)的。

回答
編輯回答
北城荒

你這是把圖片的base64編碼存到數(shù)據(jù)庫(kù)里面,當(dāng)然大了;
還是把圖片存成文件,數(shù)據(jù)庫(kù)里面保存路徑吧

2017年7月12日 19:07
編輯回答
尐潴豬

嗯 樓上正解。base64 坑定太長(zhǎng)了。你看數(shù)據(jù)庫(kù)能改儲(chǔ)存大小嗎。
如果用原生就是 formData對(duì)象。你可以看看MDN上面,很容易已使用。
后臺(tái)的代碼可能要做下修改

2018年9月18日 05:33