Отправка файлов через Axios в Asp.net Core Api? - PullRequest
0 голосов
/ 04 октября 2018

Как я могу отправить свои файлы из моего javascript (файлы через реагируют в dropzone ) на мой api core asp.net?

Я использую axios, и у меня есть что-то вроде этого

var data = new FormData();
data.append('folderName', "4141515");
data.append('file', files[0].fileObject); //dropzone wraps the fileobject
axiosInstance2.post("/inventories/ImportImage", data)





[HttpPost("ImportImage")]
public async Task<IActionResult> ImportImage(IFormFile file, string folderName){}

Это работает, но заполняется только файл, переменная foldername пуста.

Я пытался поместить ее в модель, но она не работала (код состояния 400)

public class Test
{

    public IFormFile file { get; set; }
    public string folderName { get; set; }
}

Кроме того, FormData - единственный способ отправить его на сервер?

Редактировать

Похоже, мне нужно использовать [FromForm] Test test

1 Ответ

0 голосов
/ 22 марта 2019

При использовании .net core api-контроллера вы должны использовать тег [FromBody] перед параметром и изменить параметр на тип Test, он свяжет значения с классом, который вы можете использовать.Как это: public async Task ImportImage([FromBody] Test your_values_here){}

...