改變mvc web api 支持android ,ios ,ajax等方式跨域調用


公司一個移動后端的項目用到了

webapi 

項目搭建到外網環境共app開發者調用測試接口時遇到了一個問題

接口不允許跨域調用

。查閱資料明白 

 同源策略原則根據請求報頭值

Origin

與回應報頭值

Access-Control-Allow-Origin 

來判斷是否允許調用

解決方法

1.ajax使用jsonp

jsonp 是通過請求參數中加入回調函數參數值。webapi 收到回調函數參數值返回數據不再是單純的json,而是根據回調函數參數值

的js方法調用,這樣就避免的同源策略

需要webapi 重寫json序列化方法 。

JsonMediaTypeFormatter

2.針對於ios等終端,

 


簡單方法可直接配置iis的http頭

此方法簡單快捷不安全
暴露了所有
3.重寫web api的
DelegatingHandler
加入自定義的http頭
4.利用web api 自身的擴展
Microsoft ASP.NET Web API 2 Cross-Origin Support

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM