本次使用http-request自定义文件上传:
<el-upload class="upload-demo" action="string" :http-request="uploadFile" :limit="1" :show-file-list="false">
<el-button size="small" type="primary">上传头像</el-button>
</el-upload>
备注:不要自己设置请求头类型,让浏览器自己解析,如果在main.js中配置了post参数序列化的可能会导致浏览器解析上传文件格式错误(415错误Unsupported Media Type);请将此配置注释掉;
async uploadFile(params) {
// 可以在上传之前就行文件类型和大小处理
var formData = new FormData();
formData.append('annex', params.file);
console.log(params.file);
formData.append('userid', this.sessionInfo.userid);
formData.append('sid', this.sessionInfo.session);
const { data: res } = await this.$http.post(
'http://219.1:80/updheadimg',
formData
);
if (res.code !== 0) {
return this.message.error('上传头像失败');
}
console.log(res);
},
第一次在这里发表博客比较简短,希望可以给大家一点帮助,有问题可以在下方一起交流;