Как загрузить изображение с телом формы и iformfile в net core web api и скопировать его в папку на сервере
Я хочу загрузить изображение в web api и отправить данные за один раз, но оно возвращает мне 415 ошибку кода
я пытаюсь изменить его на fromForm, но он не работает, чтобы
[HttpPost("Vendor")]
public IActionResult NewAdds([FromBody] Ads add, IFormFile file)
{
//copy file first then insert
if (file.Length > 0)
{}
}
возвращает 415. Вот результат на почтальона
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.13",
"title": "Unsupported Media Type",
"status": 415,
"traceId": "80000041-0003-ff00-b63f-84710c7967bb"
}
1 ответ
Для тех, кто смотрит на это, вы захотите добавить IForm file
как поле внутри Ads
объект. Вместо того, чтобы использовать[FromBody]
, вы захотите использовать [FromForm]
вариант.
Попробуйте создать форму с вводом Тип файла
<form method="post" enctype="multipart/form-data" asp-controller="" asp-action="Upload">
<input type="file" name="files" accept="image/*" id='' multiple />
</form>
Сделайте так, чтобы ваши действия принимали файлы
public IActionResult Upload(List<IFormFile> files)
Запись файла в папку на сервере должна быть достаточно простой, если у вас есть все необходимые права доступа.