Я создаю веб-сайт в Asp.net core 2.0, который позволяет загружать файлы. Я быстро столкнулся с проблемой ограничения загрузки 30MB
и получил от сервера ответ 404
. Ниже этого предела все работает нормально.
В Интернете я нашел несколько решений, подобных этому:
Увеличить размер загружаемого файла в ядре Asp.Net . Моя проблема в том, что я не могу заставить это решение работать, и я все еще получаю ответ 404
, когда больше 30MB
.
Мой звонок ajax и выглядит так:
function uploadMedia(isPhoto, files) {
var type;
if (isPhoto) {
type = "i";
} else {
type = "v";
}
var data = new FormData();
if (files.length > 0) {
for (idx = 0; idx < files.length; idx++) {
if (files[idx].size < 1074790400) {
data.append("fileImage" + idx, files[idx]);
} else {
BootstrapDialog.show({
type: BootstrapDialog.TYPE_WARNING,
title: "Validation Error",
message: "The maximum file size for images is 1GB. Please resize your image and upload again.",
buttons: [
{
label: "OK",
action: function(dialogItself) {
dialogItself.close();
}
}
]
});
}
}
$.ajax({
url: "/api/article/uploadfile/" + type,
type: "POST",
processData: false,
contentType: false,
dataType: false,
data: data,
success: function(jsonData) {
refreshUploadedImages(jsonData, isPhoto);
}
});
}
}
function rotateImageAnticlockwise(element) {
var id = $(element).attr("data-id");
var mediaData = getMediaData(id, true);
$.ajax({
url: "/api/article/rotateMedia/a/p/" + mediaData.fileId + "/" + mediaData.rotation,
type: "POST",
processData: false,
contentType: false,
success: function(jsonData) {
refreshRotatedImage(jsonData);
}
});
}
Тогда мой метод на стороне сервера имеет такие атрибуты:
[HttpPost]
[RequestSizeLimit(1074790400)]
[Route("api/article/uploadfile/{mediaType}")]
public async Task<IActionResult> UploadFile(string mediaType)
Кто-нибудь может увидеть, что я делаю не так? Это сводит меня с ума !!!