使用axios上传base64数据给后台,请求 报错http414
图片只有8kb,并不大
onChange(file, fileName){
const self = this;
console.log(file);
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onloadend = function() {
self.form.imgSrc = this.result;
// Vue.set(this.form,'imgSrc',)
};
console.log("1:"+self.form.imgSrc);
},
//上传图片
uploadImg(){
console.log("2:"+this.form.imgSrc);
const url ='http://**************';
this.$axios({
method: 'post',
url:url,
params: {
is_iso:1,
img_base64:this.form.imgSrc,
type:1
}
}).then((res)=>{
console.log("3:"+this.form.imgSrc);
if(res.data.errCode==0){
this.$alert(res.data.retData.msg);
const imgSucUrl = res.data.retData.img_info.img_url;
this.form.imgSucUrl = imgSucUrl;
console.log(res.data)
}else if(res.data.errCode==1){
this.$alert(res.data.retData.msg);
console.log(res.data);
}
});
},
这是我的上传图片的请求代码
‘request URI too large’说明你的url长度太大了。
你使用的POST方式,为什么不把图片数据放到请求体中呢?放到url末尾作为参数不合适吧。
建议你把图片数据放到data中。