Я столкнулся с проблемой 413 при попытке отправить данные из моего веб-приложения (.netfx 4.6.1) в мой веб-интерфейс API (. net core 3.1). В приведенном ниже коде я посылаю список, содержащий байтовые данные изображений, а также дополнительные данные, необходимые для создания файла. Ожидаемый результат - вернуть байтовый массив, содержащий новый файл. К сожалению, при отправке запроса я получаю сообщение об ошибке: Код состояния ответа не указывает на успешность: 413 (слишком большой объект запроса).
Ошибка, по-видимому, возникает только тогда, когда файл имеет большой размер, что имеет смысл , Исследование, которое я провел, похоже, указывает на настройки в IIS, основными из которых являются maxAllowedContentLength, maxRequestLength и uploadReadAheadSize. Я пытался увеличить эти значения до более подходящих для этого процесса, но, похоже, ничего не работает. Я настроил их как для веб-приложения, так и для веб-API, так как не был уверен, какое из них вызывает проблему.
Где проблема l ie? В приложении API или оба? Есть ли дополнительные настройки, которые мне не хватает, чтобы разрешить увеличение размера? Есть ли проблема с тем, как я отправляю запрос? Любая помощь приветствуется.
public static async Task<byte[]> CreatePdfFromImageFilesAsync(List<ImageFile> imageFiles)
{
var list = new List<dynamic>();
foreach (var item in imageFiles)
{
list.Add(new
{
Data = Convert.ToBase64String(item.Bytes),
PageOrder = item.PageOrder,
Rotation = item.Rotation,
Type = "PDF"
});
}
var response = _client.PostAsJsonAsync($"{FileCreatorAPI}/api/files/CreateFileFromMultiple", list).Result;
var result = response.EnsureSuccessStatusCode();
var bytes = await result.Content.ReadAsAsync<byte[]>();
return bytes;
}