我目前正在使用ASP.NET MVC Core 3.0创建一个 API 项目。我成功发送了一个没有参数的 POST 请求。但是目前我在尝试通过 Postman 发送带有 JSON 参数的 POST 请求时遇到问题,总是收到无效请求,如下所示。
请注意,key查询字符串中还有param 用于使用我创建的中间件授权请求。这部分没有问题。
这是控制器的代码:
[ApiVersion("1.0")]
[Route("api/v{version:apiVersion}/[action]")]
[ApiController]
public class ValuesController : ControllerBase
{
// POST api/values
[HttpPost]
public IActionResult Post([FromBody] UserRequest model)
{
if (!ModelState.IsValid)
return BadRequest(new ApiResponse(400, "Model state is not valid."));
return Ok($"Hello world, {model.Id}!");
}
}
Run Code Online (Sandbox Code Playgroud)
奇怪的是,我已经创建并使用了类 UserRequest 作为参数输入,如下所示:
public class UserRequest
{
public string Id { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我的Startup.cs设置,我已经添加AddNewtonsoftJson以启用 JSON 序列化程序输入:
public void …Run Code Online (Sandbox Code Playgroud)