ASP.NET 核心 API 控制器 returns 什么都没有,即使它成功完成了 POST 请求
ASP.NET Core API Controller returns nothing even though it successfully completes the POST request
我有下面的控制器,玩家可以在上面上传他们的宝藏图片。
有效!但是,当我使用 Postman 程序对其进行测试时,当我发出 Return OK()
.
时它不会 return 任何东西
如何让这个控制器向用户发送媒体已成功上传的消息?我以为 returning 一个 OK() 会做到这一点,但 Postman 中的响应字段是空白的。
有办法吗?
谢谢!
[HttpPost]
public async Task<IActionResult> PostFormData([FromForm(Name = "file")] IFormFile userFileUpload, [FromForm] Guid treasureId)
{
int maxFileSize = 52428800;
var allowedExtensions = new[] { ".jpg", ".jpeg", ".png", ".gif", ".bmp", ".pdf", ".odt", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".rtf", ".txt" };
if(userFileUpload.Length > maxFileSize)
{
return BadRequest("Maximum file size exceeded");
}
if(!allowedExtensions.Contains(Path.GetExtension(userFileUpload.FileName)))
{
return BadRequest("This file is not a valid file type.");
}
if (treasureId == Guid.Empty)
{
return BadRequest("No treasureId was provided");
}
if (await _mediaFolderEngine.CopyFile(userFileUpload, treasureId))
{
return Ok();
}
else
{
return StatusCode(StatusCodes.Status500InternalServerError);
}
}
Ok() returns 200 Status Code,表示请求成功,如果你也想用它添加自定义消息,你可以这样做
public IActionResult GetEmployees()
{
return Ok("My Message");
}
我有下面的控制器,玩家可以在上面上传他们的宝藏图片。
有效!但是,当我使用 Postman 程序对其进行测试时,当我发出 Return OK()
.
如何让这个控制器向用户发送媒体已成功上传的消息?我以为 returning 一个 OK() 会做到这一点,但 Postman 中的响应字段是空白的。
有办法吗?
谢谢!
[HttpPost]
public async Task<IActionResult> PostFormData([FromForm(Name = "file")] IFormFile userFileUpload, [FromForm] Guid treasureId)
{
int maxFileSize = 52428800;
var allowedExtensions = new[] { ".jpg", ".jpeg", ".png", ".gif", ".bmp", ".pdf", ".odt", ".doc", ".docx", ".xls", ".xlsx", ".ppt", ".pptx", ".rtf", ".txt" };
if(userFileUpload.Length > maxFileSize)
{
return BadRequest("Maximum file size exceeded");
}
if(!allowedExtensions.Contains(Path.GetExtension(userFileUpload.FileName)))
{
return BadRequest("This file is not a valid file type.");
}
if (treasureId == Guid.Empty)
{
return BadRequest("No treasureId was provided");
}
if (await _mediaFolderEngine.CopyFile(userFileUpload, treasureId))
{
return Ok();
}
else
{
return StatusCode(StatusCodes.Status500InternalServerError);
}
}
Ok() returns 200 Status Code,表示请求成功,如果你也想用它添加自定义消息,你可以这样做
public IActionResult GetEmployees()
{
return Ok("My Message");
}