这里我踩了几个坑
坑1 直接通过控制层生产一个模拟API进行测试调用不通
解决方案 未加入API注册 须在Global.asax文件中加入
GlobalConfiguration.Configure(WebApiConfig.Register);
注意排序,要先放API路由,再放mvc路由
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
坑2 加了还是访问不到
排查不到为啥访问不到接口开始打断点
到这个HttpConfiguration 对象中发现其中VirtualPathRoot参数 居然非'/'
接着验证是否加入这个VirtualPathRoot参数+Api 访问路径
结果成功访问
找找这个哪里配置产生的发现自己修改了项目URL
最后修改回去访问成功