Сейчас я тестирую cURL:
Код: Выделить всё
curl -X POST "https://xxxx/v1/Cons/attachments" \
-H "accept: text/plain" \
-H "x-api-key: " \
-H "Authorization: Bearer " \
-H "Content-Type: multipart/form-data" \
-F "fileInfo=@35-MB.pdf;type=application/pdf" \
-F "userId=xxx" \
Ошибка HTTP 413.1 – слишком большой объект запроса
Что я пробовал:
- Настройки Kestrel в Program.cs:
Код: Выделить всё
webBuilder.ConfigureKestrel(options => { options.Limits.MaxRequestBodySize = 524288000; // 500 MB }); - Атрибуты контроллера:
Код: Выделить всё
[RequestSizeLimit(524288000)] [RequestFormLimits(MultipartBodyLengthLimit = 524288000)] [HttpPost("attachments")] public async Task Upload([FromForm] ConstructionAttachmentModel model) { // handle file } - (для уровня IIS, после публикации):
Код: Выделить всё
Web.configКод: Выделить всё
- Настройки приложения Службы приложений Azure:
Код: Выделить всё
Key: ASPNETCORE_MAXREQUESTBODYSIZE Value: 524288000
После всех этих изменений мой API по-прежнему возвращает 413.1 для больших загрузок в службе приложений Azure.
Как я могу надежно разрешить загрузку файлов размером > 50 МБ в веб-API ASP.NET Core 6/7 на Azure?
Дополнительная информация:
- ASP.NET Core 6/7.
- Веб-API развернут в Службе приложений Azure.
- Тестирование с помощью cURL и Postman.
- Локальная загрузка Kestrel работает нормально.
Подробнее здесь: https://stackoverflow.com/questions/797 ... osted-on-a
Мобильная версия