這篇文章主要介紹了HTML5中使用postMessage實現Ajax跨域請求的方法的相關資料,需要的朋友可以參考下
由於同源策略的限制,Javascript存在跨域通信的問題,典型的跨域問題有iframe與父級的通信等。
常規的幾種解決方法:(1) document.domain+iframe;
(2) 動態創建script;
(3) iframe+location.hash;
(4) flash。
這裡不細說這幾種方法,記錄的是HTML5的window.postMessage。
postMessage兼容IE8+、Firefox、Opera、Safari、Chrome。
需要兩個異域的服務器來做測試,當然也可以用本地和線上服務器作為兩個異域的服務器。
假如使用phonegap開發,就可以將請求文件安裝在客戶端,然後動態請求服務器的數據處理,獲得併顯示數據。這樣就可以用任意Web開發語言及方法來開發phonegap App所需的後台。
1. postMessage的用法postMessage是HTML5為解決js跨域問題而引入的新的API,允許多個iframe/window跨域通信。
假設有結構如下:
JavaScript Code複製內容到剪貼板