我有一个.NET core 2.1 MVC Web应用程序。我的数据仅对小文件执行POST(到Controller动作方法)。但是对于较大的文件,它将返回404错误。我看到错误“请求过滤模块配置为拒绝超过请求内容长度的请求”。我无法对web.config进行更改,因为它是2.1核心应用程序(具有appsettings.json而不是web.config)'
我的AJAX呼叫是-
$("#UploadButton").click(function () {
debugger;
var progressEle = $("#progress");
progressEle.css("background", "blue");
var data = document.getElementById("file").files[0];
var formData = new FormData();
formData.append("files", data);
$.ajax({
url: "../Home/UploadFile",
data: formData,
processData: false,
contentType: false,
type: "POST",
xhr: function () {
var xhr = new window.XMLHttpRequest();
xhr.upload.addEventListener("progress", function (evt) {
evt.lengthComputable = false;
if (evt.lengthComputable) {
debugger;
var progress = Math.round((evt.loaded / evt.total) * 100);
progressEle.width(progress + "%");
}
}, false);
return xhr;
},
success: function (data) {
if (data.state == 0) {
progressEle.css("background", "green");
}
}
});
})
并且控制器操作方法是-
[HttpPost]
[RequestSizeLimit(long.MaxValue)]
[DisableRequestSizeLimit]
public JsonResult UploadFile(IList<IFormFile> files)
{
//upload file details to be added
return Json(new { state = 0, message = string.Empty });
}