默认情况下,浏览器端发送Ajax请求一般被禁止跨域访问,如A域名网站访问B域名网站的请求会被终止,在ASP.NET MVC项目中,我们可以配置相应的设置项,允许网站的接口跨域访问,主要需要设置Access-Control-Allow-Origin、Access-Control-Allow-Headers、Access-Control-Allow-Methods等几个项目即可。
如果允许整个站点对外的跨域访问,则可以在网站的web.config文件中对允许跨域访问的域名进行设置,如果不指定具体域名,可在<system.webServer></system.webServer>节点中添加下列设置代码:
<httpProtocol> <customHeaders> <add name="Access-Control-Allow-Origin" value="*" /> <add name="Access-Control-Allow-Headers" value="*" /> <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE" /> </customHeaders> </httpProtocol>
设置好上述配置项后,前台即可跨域访问到网站数据。Access-Control-Allow-Origin设置为*表示允许所有域名,如要设置特定的域名,填写为具体域名即可。
备注:此文章转载自ASP.NET MVC设置允许跨域访问_IT技术小趣屋。