当 Content-Type 设置为“multipart/form-data”时,上传方法不会触发控制器方法。如果 Content-Type 设置为 'application/json' 方法将被触发,但文件对象将为空。
这是我的客户(角度 4)实现:
public uploader = new FileUploader({
url: "/api/mycontroller/uploadfile",
allowedFileType: ["pdf"],
headers: <Headers[]>[
//{ name: 'Content-Type', value: 'application/json' }
{ name: 'Content-Type', value: 'multipart/form-data' }
]
});
save() {
//...
this.uploader.queue.reverse()[0].upload();
}
这是我的 web api 控制器(.net core 1.0):
[Route("uploadfile")]
[HttpPost]
public async Task<ActionResult> UploadFile([FromBody]IFormFile file)
{
//...
}
也许我忘了添加一些特殊参数或其他东西?