为Owin项目增加WebApi
上一篇文章我们新建了一个Owin项目。
本节,我们来为其增加WebApi功能
项目右键》添加》新搭建基架的项目
选择Web API 2控制器
为默认控制器命名
点击添加后项目结构如下:
将WebApiConfig.cs排除出项目(我们这里用的是Owin,WebApi模板默认的注册逻辑就没用了)
同理,Global.asax.cs中GlobalConfiguration.Configure(WebApiConfig.Register);也注释掉,或者删除。
打开DefaultController.cs,添加如下代码:
public IEnumerable<string> Get() { return new string[] { "value1", "value2" }; }
向Startup类增加如下代码:
var config = new HttpConfiguration(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional, action = RouteParameter.Optional } ); app.UseWebApi(config);
注意,把之前的app.Run测试代码注释掉
然后访问http://localhost:33964/api/default
已经可以正常访问了。IE弹出下载提示框。
使用FF上的Rest调试工具访问:
好了,目前已经可以正常访问WebApi里的相应控制器方法了。