在将分页添加到API控制器后,我现在收到不支持的媒体类型的json错误。
我正在使用ASP.NET Core 2.2。我可以通过注释掉Controller上的[ApiController]属性来解决此问题,但这显然不是首选,我想了解潜在的问题是什么。
public async Task<ActionResult<BlogPost>> Get(ResourceParameters resourceParameters)
{
return Ok(await _repository.GetBlogPostsAsync(resourceParameters));
}
// The problem is suppressed by commenting out the ApiController attribute
[Route("api/[controller]")]
//[ApiController]
public class BlogController : ControllerBase
..
响应
// 20190530081824
// https://localhost:5001/api/blog
{
"type": "https://tools.ietf.org/html/rfc7231#section-6.5.13",
"title": "Unsupported Media Type",
"status": 415,
"traceId": "0HLN4PRV4JD94:00000001"
}
答案 0 :(得分:0)
尝试将您的代码更改为此
[Route("api/[controller]/")]
[ApiController]
public class BlogController : Controller
和
public async Task<ActionResult<BlogPost>> Get([FromQuery] ResourceParameters resourceParameters)
{
return Ok(await _repository.GetBlogPostsAsync(resourceParameters));
}
请确保FromQuery或FromBody取决于您提交的对象