如何通过js跨域调用ASP.NET Web API (请问如何实现在javascript中通过http get的方式跨域调用ASP.NET Web API?)

时间:2022-06-06 21:38:26

客户端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