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