這裏有什麼問題?
Ajax調用沒有達到動作在ASP.net中捕獲ajax文件上傳(html5)MVC
服務器端:
[HttpPost]
public ActionResult UploadFile(long someID, HttpPostedFileBase myFile)
{
return "hello";
}
客戶端HTML:
<form id="my-form" method="post" action="" enctype="multipart/form-data">
<input type="hidden" name="someID" value="156" />
<input type="file" name="myFile" />
</form>
客戶端的JavaScript:
$.ajax({
async: true,
type: 'POST',
url: '/MyController/UploadFile/',
data: new FormData($('#my-form')),
success: function (data) {},
cache: false,
contentType: false,
processData: false
});
這種上傳通過ajax應該可以在一些瀏覽器中使用。
我得到這個服務器端錯誤: 參數字典包含參數爲非可空類型「System.Int64」(...)
的「someID」無效項如果我改變行動UploadFile(),沒有參數,ajax調用進入操作,但是如何恢復發佈的數據?
這是一個安全問題,也http://stackoverflow.com/questions/19267749/null-parameter-using-ajax-見beginform-iso-html-beginform – Gerard
這不是安全問題 – sports