我是新的反应和web api,我得到这个不受支持的媒体类型错误,而我试图上传我的文件到我的web api功能。

下面是我的代码:
onFileUpload = () => {
// Create an object of formData
const formData = new FormData();
console.log("FormData");
// Update the formData object
formData.append('myFile', this.state.selectedFile, this.state.selectedFile.name);
console.log(this.state.selectedFile);
// Request made to the backend api
// Send formData object
//axios.post("api/uploadfile", formData);
axiosAPI.post('api/observation/Uploadfile', formData).then(response => {});
};相应的web api代码如下:
[HttpPost]
[Route("Uploadfile")]
public IHttpActionResult Uploadfile(object formData)
{
try
{
return Ok(formData);
}
catch (Exception ex)
{
return Content(HttpStatusCode.NoContent, "Something went wrong");
}
}我试图上传文件,并将其拿到我的后端,但我得到了这个错误。这个错误意味着什么?我如何解决这个问题?
发布于 2022-04-22 21:30:54
我也有同样的问题,我使用.NET 6作为API,并与Axios的前端反应。
为了能够在控制器中获取文件,我必须使用"FromForm“属性,否则,当我试图执行Post请求时,我会得到415错误。
[HttpPost]
public async Task<IActionResult> Create([FromForm] ExampleDto dto)
{
/// ...
}为了使用Axios从发送数据,我和您一样创建了FormData对象,并在没有任何特殊头o配置的情况下发出了post请求。
希望这能帮助你解决你的问题。
发布于 2022-01-10 05:59:14
每当您上传文件时,请确保向请求添加适当的标题。
axiosAPI.post('api/observation/Uploadfile', formData, {
headers: {
'Content-Type': 'multipart/form-data' // <- HERE
}
}).then(response => {});发布于 2022-04-13 23:13:17
有时问题在formData上,您需要在formData上附加obj文件,然后发送到api。
const formData = new FormData();
var file = fileList[0].originFileObj;
formData.append("excelFormFile", file); //Append file obj to formData//excelFormFile名称类似于.NET核心Api类c#代码:“公共异步任务PostProductImport(IFormFile excelFormFile)”
https://stackoverflow.com/questions/70648205
复制相似问题