Access-Control-Allow-Origin设置跨域


我来自己写一下答案,以给后来的朋友一点思路和建议:
1,首先把Access-Control-Allow-Origin设置成*是不妥的,自己的接口服务器不能允许所有人都可以访问。
2,具体哪里可以设置Access-Control-Allow-Origin呢,

a,web.config中可以设置;

b,需要在IIS服务器站点的功能视图中设置HTTP响应标头;
(a,b可以参考:http://www.th7.cn/Program/net...

c,通过nginx代理服务器进行设置;

d,修改接口api,在每个api上添加响应头;https://docs.microsoft.com/en...

e,拦截器方式(是d的一种封装)http://ask.csdn.net/questions...http://stackoverflow.com/ques...

ab只能设置一个域名或*,
c需要更多知识背景,配置更多环境,相对windows Server来说不太适合
d,是微软给出的最终解决方案,但是不是最佳方案,
e是对d的一种封装,写一个拦截器,应用到所有控制器上,在拦截器里控制来访域名,动态设置Access-Control-Allow-Origin的值.

根据自己情况选择合适的解决方案,这里我选择了e方案

ie9以下的支持方案:

A CORS proxy for IE9 and below (jQuery + ASP.NET)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM