ajax跨域處理

方法一

代理(後臺)
1.通過在同域名的web服務器端創建一個代理;
北京服務器(域名:www.beijing.com)
上海服務器(域名:www.shanghai.com)
比如在北京的web服務器的後臺(www.beijing.com/proxy-shanghaiservice.php)來調用上海服務器(www.shanghai.com/services.php)的服務,然後再把訪問結果返回給前端,這樣前端調用北京同域名的服務就和調用上海的服務效果相同了
比如瀑布流案類,用代理方式獲取數據;

方法二

JSONP
1.通過創建動態script實現按需調用;
2.用script標籤加載資源是沒有跨域問題的;
3.當前階段如果想通過純web端(ActiveX控件、服務端代理、屬於未來的HTML5之Websocket等方式不算)跨域訪問數據就只有一種可能,那就是在遠程服務器上設法把數據裝進js格式的文件裏,供客戶端調用和進一步處理;
百度搜索框案類;

方法三

XHR2
html5 的XHR2 ;
由於同源限制(same-origin policy),以前XMLHttpRequest(XHR) 只能同源通訊,不能進行跨源資源共享(Cross-Origin Resource Sharing,CORS) 。由於HTML 5的概念形成,在原有XHR的基礎上提出了XMLHttpRequest Level2(XHR2),在XHR2中對CORS有了很好的支持。

發佈了51 篇原創文章 · 獲贊 19 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章