WebApi路由

Posted 高空燕子飞过

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebApi路由相关的知识,希望对你有一定的参考价值。

路由分为两种模式:模板路由和特性路由。

模板路由

模板路由是ASP.NET Web API默认提供的路由模板路由使用前需要定义路由模板。如下面默认的路由模板:

默认路由URL格式是api/{controller}/{id}api代表在资源前面要带上api目录,controller代表请求资源的控制器名称。id代表一条资源的idid 是可选的。这种默认的模板是不带action的,所以它是以请求方式来区分资源的,我们必须在action上添加请求方式特性加以区分。如果不定义请求方式,那么系统默认是Get请求。

请求路径:http://cms.ddhd.com/api/Users

获取数据:

但是有多个方法的时候,是需要区分请求的。

一般请求方式是这样区分的

Post:新增记录

Put:修改记录

Get:获取数据

Delete:删除数据

WebApi的模板路由也支持action,可以修改Register方法实现。

特性路由自己定义路由规则

有时候我们想对某个资源的所有操作都加上一个统一的前缀:

统一定义前缀:[RoutePrefix("Api/Users")]

定义不同名称的请求:[Route("PageList")]

请求的url:http://cms.ddhd.com/Api/Users/PageList

获取数据:

 

以上是关于WebApi路由的主要内容,如果未能解决你的问题,请参考以下文章

WebAPI - 属性路由 POST 不适用于 WebAPI Cors?

WebApi - 路由

确保 WebAPI2 路由在 MVC 路由之前匹配

WebApi路由机制详解

WebAPI的路由规则

ASP.NET WebApi 从入门到"放弃"系列---WebApi 请求路由