使用elementui传MultipartFile给后端
时间: 2023-06-20 10:04:56 浏览: 112
SpringMVC使用MultipartFile 实现异步上传方法介绍
在使用 ElementUI 上传文件时,可以使用 `on-success` 事件获取上传成功后的文件信息,并将文件信息传递给后端。以下是一个示例代码:
在模板中:
```html
<el-upload
class="upload-demo"
action="/your/upload/url"
:on-success="handleSuccess"
:headers="{'Authorization': 'Bearer ' + token}">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
```
在脚本中:
```js
export default {
data() {
return {
token: 'yourToken',
fileList: [],
uploadUrl: '/your/upload/url'
}
},
methods: {
handleSuccess(response, file, fileList) {
// 上传成功后的回调函数,response为后端返回的数据
console.log(response)
// 将文件信息传递给后端
this.$http.post(this.uploadUrl, {
file: file.raw
}, {
headers: {
'Authorization': 'Bearer ' + this.token
}
}).then(response => {
console.log(response)
}).catch(error => {
console.log(error)
})
}
}
}
```
在上传成功后,通过 `handleSuccess` 函数获取后端返回的数据,并在其中将文件信息传递给后端。在传递文件时,使用 `file.raw` 获取文件的原始数据,这样后端就可以通过 MultipartFile 获取到文件数据了。同时,还需要在请求头中添加认证信息,这里使用 token 进行认证。
阅读全文