[ApiController]
[Route("api/[controller]/[action]/{url}")]
public class BackendController : ControllerBase
{
[HttpGet]
public IActionResult GenericAction(string url)
{
var queryString = HttpContext.Request.QueryString;
return Ok($"url: {url}, queryString: {queryString}");
}
}
上述代码的结果:
网址:https ://127.0.0.1:5001/api/backend/GenericAction/product?id=100
响应:url:产品,queryString:?id=100
网址:https ://127.0.0.1:5001/api/backend/GenericAction/company?name=michael
响应:url:公司,queryString:?name=michael
# 编辑
如果要将所有 http 操作添加到一个
[HttpGet]
[HttpPost]
[HttpPut]
[HttpDelete]
public IActionResult GenericAction(string url)
{
var queryString = HttpContext.Request.QueryString;
return Ok($"url: {url}, queryString: {queryString}");
}
# 编辑
没有动作名称
[ApiController]
public class BackendController : ControllerBase
{
[HttpGet]
[HttpPost]
[HttpPut]
[HttpDelete]
[Route("api/backend/{url}")]
public IActionResult Get(string url)
{
var queryString = HttpContext.Request.QueryString;
return Ok($"url: {url}, queryString: {queryString}");
}
}