【疑难杂症】C# ajax get请求不到Api方法数据

来源:互联网 发布:网络教育 会计 上海 编辑:程序博客网 时间:2024/06/14 03:12

由于对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请求不到