我正在尝试用postman发送一个图像文件到api控制器。我正在使用。Net 6。
问题是错误总是如图postman screenshot所示
这是我的准则
namespace WebAPI.Controllers
public class Image
{
public IFormFile file { get; set; }
}
[Route("api/[controller]")]
[ApiController]
public class CarImagesController : ControllerBase
{
[HttpPost("add")]
public IActionResult Add([FromForm] Image file)
{
if (file != null)
{
return Ok();
}
return BadRequest();
}
}
如果可以使用,我想更改Add方法的参数,我的意思是
public IActionResult Add([FromForm] IFormFile file)
并且我希望在更改后删除Image类。
谢谢你的帮助
2条答案
按热度按时间rkkpypqq1#
你的代码是正确的,我用它们创建了一个示例,它们都工作得很好。这个问题可能与使用Postman时,键值包含空格有关,例如
file
。您可以查看以下屏幕截图:当使用
file
键时,一切都运行良好,但如果使用file
(带空格),则会显示400错误。fgw7neuy2#
你的代码都很好,但是你在postman中有一个问题。检查formField键
file
。它有空格bcz你在那里按了回车键。只要删除任何多余的空格,它就应该工作。我知道这听起来很愚蠢,但这就是问题所在。 Postman 把空格和新行当作关键字和值。
看到箭头和...,这是指示器。