Функции Azure - Microsoft.AspNetCore.Server.Kestrel.Core: слишком большое тело запроса - PullRequest
0 голосов
/ 26 ноября 2018

Я пытаюсь опубликовать большой файл в функциях Azure, который написан на платформе Visualstudio Code.Когда я попытался загрузить менее 28 МБ, это было успешно.кроме этого я получаю исключение Microsoft.AspNetCore.Server.Kestrel.Core: тело запроса слишком большое .Пробовал использовать атрибуты RequestSizeLimit, DisableRequestSizeLimit, но бесполезно.Ниже приведен код, написанный в коде VS

public static async Task Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)]HttpRequestMessage req)
    {
            var provider = new MultipartMemoryStreamProvider();
            await req.Content.ReadAsMultipartAsync(provider);
            var file = provider.Contents.First();
            var fileInfo = file.Headers.ContentDisposition;
            var fileData = await file.ReadAsByteArrayAsync();
    }

И я вызываю вышеуказанную функцию из angular6.Я попытался просмотреть следующую документацию и не смог реализовать ее в функции Azure [https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.server.kestrel.kestrelserverlimits?view=aspnetcore-1.1][KestrelServerLimits Class]. Пожалуйста, дайте мне знать, если есть прямая настройка, разрешающая большие данные или любую другую работу.Заранее спасибо.

1 Ответ

0 голосов
/ 26 ноября 2018

Глядя на эту проблему в GitHub , невозможно обойти ограничение максимального размера для функций Azure (пока).

Один из способов - обрезать файл на куски изагрузить их в свой API.Затем вы можете собрать файл из кусков.Существует несколько загрузчиков для Angular up на NPM

...