前端文件上传时,无法携带参数,找了很多教程,才找到答案,记录一下
使用fromData的append拼接
let fileObj = document.getElementById("image").files[0];
let formFile = new FormData();
formFile.append("file", fileObj);
formFile.append("id", '10001');
let reader = new FileReader();
reader.readAsDataURL(fileObj);
reader.onload = function (e) {
//初始化JavaScript图片对象
const image = new Image();
//FileReader获得Base64字符串
image.src = e.target.result;
image.onload = function () {
//获得图片高宽
let height = this.height;
let width = this.width;
if (height === 80 && width === 80) {
$.ajax({
method: 'POST',
url: path + '/api/upload',
data: formFile,
processData: false,
contentType: false,
success: function (res) {
console.log(res);
}
})
}
};
}
后端接收参数,如下
@RequestMapping("/upload")
public String uploadLogoImage(MultipartFile file,String id, HttpServletRequest request) {
String fileName = file.getOriginalFilename();
}