同一控制器的两个端点返回相同的响应



在Postman中,如果我在控制器中运行一个端点,那么它会显示正确的响应。但是当我调用另一个端点时,它显示了与第一个相同的响应。

有人提到这可能是因为我多次调用服务。

我该如何解决这个问题?我是否应该为这些端点提供单独的服务,尽管这将是糟糕的设计,因为它们使用相同的功能?

这是我的控制器

[HttpGet]
[Route("")]
{AllowAnonymous]
public async Task<IActionResult> GetTasks() {
var projects = await _taskService.GetTasks(Constants.CleanNameSuffix, Constants.CleanNameRegex);
var dashboard = new DashboardDto{
Projects = projects
}
return Ok(dashboard);
}
[HttpGet]
[Route("clean")]
{AllowAnonymous]
public async Task<IActionResult> GetCleanTasks() {
var projects = await _taskService.GetTasks(Constants.NameSuffix, Constants.NameRegex);
var dashboard = new DashboardDto{
Projects = projects
}
return Ok(dashboard);
}

HttpGet函数取路由;我认为这是一个更好的做法。

[HttpGet("{id}")]
public async Task<IActionResult> GetString([FromRoute]string id)
{
return Ok(id);
}
[HttpGet("MyFileName/{id}")]
public async Task<IActionResult> GetFileName([FromRoute]string id)
{
return Ok($"{id}.xlsx"));
}

最新更新