使用AJAX实现文件上传时Illegal invocation错误
Js代码
var formData = new FormData();
formData.append('userName',$scope.userName);
formData.append('file',$scope.file);
var url ="http://localhost:8080/SpringMVCT/rest/v1/uploader";
$.ajax({
type:'POST',
url:url,
data:formData,
contentType:undefined,
mimeType:"multipart/form-data",
success:function(data){
}
});
看错误提示信息应该是输入参数错误,检查代码可能是$scope.file这个File类型的参数被预先处理了,于是设置$.ajax 的processData:false,请求成功
$.ajax({
type:'POST',
url:url,
data:formData,
contentType:undefined,
processData:false,
mimeType:"multipart/form-data",
success:function(data){
}
});
processData用于对data参数进行序列化处理,默认值是true。默认情况下发送的数据将被转换为对象,如果不希望把File转换,需要设置为false
每天一点点。。。

浙公网安备 33010602011771号