【C#】初次使用webapi的体会

webapi controller 要继承 ApiController
 
重写权限验证 ,记得使用 System.Web.Http下的AuthorizeAttribute。
 
webapi默认路由是根据参数来匹配的,不是通过action,如果要增加路由可以在WebApiConfig文件夹下的Register使用:
 config.Routes.Add(
               name: "ActionApi",
               new System.Web.Http.Routing.HttpRoute(
               routeTemplate: "actionapi/{controller}/{action}/{id}",
               defaults:new System.Web.Http.Routing.HttpRouteValueDictionary(new { id=RouteParameter.Optional}) 
           ));
注意这个开头的actionapi不要跟默认的api一样就行,不然也不得行。
 
webapi可以的方法可以直接返回对象,不用转成json,因为默认就把返回的对象转换为json了。
 
接受参数,如果是Get请求,要在参数前加上[FromUri],比如:[FromUri]string UserName
 
如果是Post请求,参数不是对象,是一个参数,请求的时候,
contentType要写成:application/x-www-form-urlencoded;charset=utf-8
 
并且一个参数的情况特殊,请求方拼接的时候,直接 ='HelloLLLLL',
而不是这样:UserName='HelloLLLLL'。
并且接受的api方法要加上[FromBody] UserName
方法上加上属性[HttpPost]
原文地址:https://www.cnblogs.com/HelloQLQ/p/15201049.html