我在项目中将文件上传与webapi一起使用。我正在与 postman 进行测试。但是, Request.Content.IsMimeMultipartContent()始终返回false。
postman 截图:
FileUploadController代码:
public async Task<HttpResponseMessage> UserImageUpload()
{
try
{
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}
var userImageUploadPath = HttpContext.Current.Server.MapPath(CommonParameters.UserProfileImageServerPath);
var streamProvider = new CustomMultipartFormDataStreamProvider(userImageUploadPath);
await Request.Content.ReadAsMultipartAsync(streamProvider);
var files = new List<string>();
foreach (MultipartFileData file in streamProvider.FileData)
{
files.Add(Path.GetFileName(file.LocalFileName));
}
return Request.CreateResponse(HttpStatusCode.OK, files);
}
catch (Exception exception)
{
logger.ErrorFormat("An error occured in UserImageUpload() Method - Class:FileUploadController - Message:{0}", exception);
return Request.CreateResponse(HttpStatusCode.BadRequest);
}
}
最佳答案
这是 postman 的错误。尝试删除Content-Type header 。发送实际的帖子时,浏览器将自动添加适当的标题并创建边界。
关于file-upload - 如何解决 postman 中的文件上传错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35501327/