我无法使用 POSTMAN 创建 POST 请求,但我在 Swagger 上没有遇到任何问题
I cannot create a POST request using POSTMAN, but I have no problems doing it on Swagger
我有一个可以接收 Post 请求的控制器。
public IHttpActionResult PostCreaAlimento([FromBody] Alimento alimento)
{
if (!ModelState.IsValid)
return BadRequest("Invalid data.");
return _repositorio.CreaAlimento(alimento) ? Ok(alimento) : (IHttpActionResult)NotFound();
}
请求在 swagger 上正确完成,我收到了响应代码 200。
但是,如果我尝试在 POSTMAN 上执行相同操作,我会收到一个不受支持的媒体文件。
Request on POSTMAN
为什么这不起作用:/
请尝试 raw,而不是 form-data。确保选择 JSON。接下来准备您的数据作为 json 对象。
您将 json 数据作为表单数据传递,但您的控制器接受请求 body 数据作为原始数据。您应该将 body 类型更改为原始数据。
由于您在操作中使用了 [FromBody],这意味着您需要发送 application/json contentType
所以 select Body=> raw => json 并将其放入 Postman
的正文中
{
"AlimentoId":4,
"Description":"testing",
"Calorias" :400
}
我有一个可以接收 Post 请求的控制器。
public IHttpActionResult PostCreaAlimento([FromBody] Alimento alimento)
{
if (!ModelState.IsValid)
return BadRequest("Invalid data.");
return _repositorio.CreaAlimento(alimento) ? Ok(alimento) : (IHttpActionResult)NotFound();
}
请求在 swagger 上正确完成,我收到了响应代码 200。
但是,如果我尝试在 POSTMAN 上执行相同操作,我会收到一个不受支持的媒体文件。
Request on POSTMAN
为什么这不起作用:/
请尝试 raw,而不是 form-data。确保选择 JSON。接下来准备您的数据作为 json 对象。
您将 json 数据作为表单数据传递,但您的控制器接受请求 body 数据作为原始数据。您应该将 body 类型更改为原始数据。
由于您在操作中使用了 [FromBody],这意味着您需要发送 application/json contentType 所以 select Body=> raw => json 并将其放入 Postman
的正文中{
"AlimentoId":4,
"Description":"testing",
"Calorias" :400
}