简体   繁体   中英

Sending files through Axios to Asp.net Core Api?

How can I send my files from my javascript(files are through react dropzone ) to my asp.net core api?

I am using axios and I have something like this

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){}

This does work but only the "file" is populated, "foldername" variable is empty.

I tried to put it in a model but it did not work (400 status code)

public class Test
{

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

Also is FormData the only way to send it to the server?

Edit

Seems like I need to use [FromForm] Test test

With the .net core api controller, you have to use the [FromBody] tag before the parameter, and change the parameter to type Test, it will bind the values to a class that you can use. Like this: public async Task ImportImage([FromBody] Test your_values_here){}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM