由于对API不是很熟悉,结果造成请求过程中,请求不到数据的情况,经过个人总结有一下两种情况
1.由于参数的传递方式导致的,ApiController中的参数传递与Controller还是有区别的,特别是POST的参数,详情请参考:WebApi 接口参数不再困惑:传参详解
2.由于路由使用不当造成的
解决方案: 在App_Start/WebApiConfig文件中添加一条规则
config.Routes.MapHttpRoute( name: "WxJsApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional } );
打开文件Global.asax,务必保证 API路由(GlobalConfiguration.Configure(WebApiConfig.Register))在页面控制器路由前面( RouteConfig.RegisterRoutes(RouteTable.Routes))
本人亲测路由顺序反了,api请求不到,404请求不到