.NET 处理WEBAPI跨域问题

1.跨域问题导致的原因

出于安全考虑,浏览器会限制脚本中发起的跨站请求,浏览器要求JavaScript或Cookie只能访问同域下的内容。

由于这个原因,我们不同站点之间的数据访问会被拒绝。

2.解决方案

2.1.导入microsoft.aspnet.webapi.cors.dll

点击项目下面的引入,选择“管理NuGet程序包”

搜索microsoft.aspnet.webapi.cors

点击“安装”即可。

2.2.代码实现

在App_Start文件夹下面的WebApiConfig.cs类里面的Register方法下面增加允许跨域的实现。

代码如下:

//获取配置文件中的跨域配置
var allowedOrigin = ConfigurationManager.AppSettings["allowedOrigin"];  
//跨域配置
EnableCorsAttribute coreAttr = new EnableCorsAttribute(allowedOrigin, "*", "*")
{SupportsCredentials = true
};
config.EnableCors(coreAttr);

2.3.在Web.config增加配置项

添加允许跨域的地址,*标识允许所有地址跨域访问

则如下:

  

如果只允许某个地址跨域访问,则配置如下:

  

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部