使用AJAX實現文件上傳時Illegal invocation錯誤
阿新 • • 發佈:2017-06-17
cnblogs 代碼 sda log oca mime http () code
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
使用AJAX實現文件上傳時Illegal invocation錯誤