无法使用Postman将图像上传到API(文件字段为必填项),NET6

iyr7buue  于 2022-11-07  发布在  Postman
关注(0)|答案(2)|浏览(206)

我正在尝试用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类。
谢谢你的帮助

rkkpypqq

rkkpypqq1#

你的代码是正确的,我用它们创建了一个示例,它们都工作得很好。这个问题可能与使用Postman时,键值包含空格有关,例如file
您可以查看以下屏幕截图:当使用file键时,一切都运行良好,但如果使用file(带空格),则会显示400错误。

fgw7neuy

fgw7neuy2#

你的代码都很好,但是你在postman中有一个问题。检查formField键file。它有空格bcz你在那里按了回车键。只要删除任何多余的空格,它就应该工作。
我知道这听起来很愚蠢,但这就是问题所在。 Postman 把空格和新行当作关键字和值。

看到箭头和...,这是指示器。

相关问题