客户端js无需任何专门设置,使用通常的ajax调用即可:
$.ajax({ url: ‘跨域URL‘, type: ‘get‘, dataType: ‘json‘, success: function (data) { $(‘#banner_right‘).html(data); } });
服务端需要在WebApiConfig.Register()中添加如下的代码
public static class WebApiConfig { public static void Register(HttpConfiguration config) { var cors = new EnableCorsAttribute("http://www.cnblogs.com,http://news.cnblogs.com", "*", "*"); config.EnableCors(cors); } }
注1:"http://www.cnblogs.com,http://news.cnblogs.com"表示允许这2个域名可以跨域调用这个Web API。
注2:需要nuget安装Microsoft.AspNet.Cors
如何通过js跨域调用ASP.NET Web API (请问如何实现在javascript中通过http get的方式跨域调用ASP.NET Web API?)
原文:http://www.cnblogs.com/webenh/p/6086222.html