Я использую ASP.NET Core 2.2 ApiController, и у меня есть следующее:
[ApiController]
public class PostController : Controller {
[HttpGet("posts")]
public async Task<IActionResult> Get() {
return BadRequest();
}
}
В этом случае я получаю следующий ответ:
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "Bad Request",
"status": 400,
"traceId": "0HLMFSL0C7SKB:00000001"
}
Но если я вернусьнекоторые данные следующим образом:
[ApiController]
public class PostController : Controller {
[HttpGet("posts")]
public async Task<IActionResult> Get() {
List<String> errors = new List<String> { "Code is invalid" };
return BadRequest(new { errors = errors });
}
}
Я получаю следующее:
{
"errors": ["Code is invalid"]
}
Почему ApiController добавляет type, title, status и traceId, когда содержимое не возвращается?
Я бы хотел, чтобы ответы всегда были похожи:
{
"errors": ["Code is invalid"],
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.1",
"title": "Bad Request",
"status": 400,
"traceId": "0HLMFSL0C7SKB:00000001"
}