vue+axios+el-upload实现文件上传(带参数):

本次使用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);
        },

第一次在这里发表博客比较简短,希望可以给大家一点帮助,有问题可以在下方一起交流;

发布了1 篇原创文章 · 获赞 1 · 访问量 18

猜你喜欢

转载自blog.csdn.net/web9968/article/details/105256190