@RequestMapping(value = "User", method = RequestMethod.PUT)
@ResponseBody
public String update(HttpServletRequest request, HttpServletResponse response, MultipartFile file) throws UnsupportedEncodingException {
System.out.println(file.getName());
return null;
}
//传送文件时总会报错,不知道AJAX要怎么写,希望建议详细点
var fileObj = document.getElementById(inputId).files[i];
// 获取要传输的文件------假设只有一个文件
var file = document.getElementById(inputId).files[0];
$.ajax({
url: URL,
type: "POST",
async: false,
cache: false,
processData: false,// 告诉jQuery不要去处理发送的数据
contentType: false,// 告诉jQuery不要去设置Content-Type请求头
data: file,
success: function(data){
alert(data);
},
error: function(err) {
alert(err);
}
});
格式大概是这样的,修改修改就行了。主要传文件注意设置contentType对就行了。
把文件转为base64位字符串,就可以传字符,后台接收字符串,转起来很简单