Web Api之Cors跨域
要想跨域需要准备一下几步骤
1.创建WebAPI(请按照图片先后顺序来)
2.进入NuGet包管理搜 Microsoft.AspNet.WebApi.Cors 进行下载
3.修改APP_Start中的 WebApiConfig文件 这里时配置路由的地方,我们需要进行修改才能使用,黄色框框的为需要修改的文件,红色框框是需要添加上去的代码
注意:WebAPI默认路由是达不到我们需求的 他的默认路由为 api/{controller}/{id} 这个路由我们不能用所以我们必须更改,代码如下(直接覆盖掉原始的就可以解决了)
public static void Register(HttpConfiguration config) { // Web API 配置和服务 // Web API 路由 config.MapHttpAttributeRoutes(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{action}/{id}", defaults: new { id = RouteParameter.Optional } ); // 启用跨域 config.EnableCors(new System.Web.Http.Cors.EnableCorsAttribute("*", "*", "*")); }
控制器中方法使用如下
[HttpPost] public IHttpActionResult GetDome() { string JSON = JsonConvert.SerializeObject(“数据测试”); return Ok(JSON); }
JQuery方法调用:
$.ajax({ type: 'post', url: '域名/GetDome', success: function (data) { alert(data) } )}