04-ValuesController API的控制器

它的基类是 ApiController,它是 WEB API 的核心。

ApiController 负责协调 WEB API 对象模型中各种不同的类,在 HTTP 请求的处理中执行一些关键的任务:

  • 选择和运行控制器类上的一个操作 action
  • 将 HTTP 请求消息的各元素转成控制器操作方法的参数,并将操作方法返回值转换为有效的 HTTP 响应正文
  • 运行各种筛选器,这些筛选器可以是为操作 action 或者 controller 专门配置,也可以是全局的
  • 为控制器类的操作方法提供适当的上下文
public class ValuesController : ApiController
{
    // GET api/values
    public IEnumerable<string> Get()
    {
        return new string[] { "value1", "value2" };
    }

    // GET api/values/5
    public string Get(int id)
    {
        return "value";
    }

    // POST api/values
    public void Post([FromBody]string value)
    {
    }

    // PUT api/values/5
    public void Put(int id, [FromBody]string value)
    {
    }

    // DELETE api/values/5
    public void Delete(int id)
    {
    }
}Code language: HTML, XML (xml)

发送 /api/values 的 HTTP GET 请求会触发控制器的无参 Get 方法。

ASP.NET WEB API 可以根据 HTTP 方法来选择操作 Action。另外,还可以通过查询字符串参数来进行选择,然后进行参数绑定。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注