您好,登錄后才能下訂單哦!
要解決跨域問題,我們可以使用以下幾種方法:
一、通過jsonp跨域(實際上是動態創建script標簽)
jsonp(json with Padding)是資料格式json的一種“使用模式”,可以讓網頁從別的網域要資料。jsonp也叫填充式json,是應用json的一種新方法,只不過是被包含在函數調用中的json。jsonp由兩部分組成:回調函數和數據。回調函數是當響應到來時應該在頁面中調用的函數,而數據就是傳入回調函數中的json數據。
二、通過document.domain+ iframe (只有在主域相同的時候才能使用該方法)
兩個不同域的a.html和b.html
解決辦法:在兩個頁面都插入document.domain,這樣就能訪問iframe里window對象的各種屬性。
三、使用window.name來進行跨域
原理:在一個窗口(window)的生命周期內,窗口載入的所有的頁面都是共享一個window.name的,每個頁面對window.name都有讀寫的權限
四、使用HTML5的window.postMessage方法來跨域傳送數據
五、利用CORS
CORS是自定義HTTP頭部,使瀏覽器和服務器對比,從而決定請求和響應是否應該進行。
IE8使用XDR對象實現CORS,和XHR類似用法
現代瀏覽器使用普通的XMLHttpRequest對象請求就行。
當然,實現JavaScript跨域的方法還有圖片Ping、利用flash等。跨域是前端最重要的面試題之一,掌握它你就比別人多了一個優勢,如果你想學好Web前端開發,建議參加專業的學習方式。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。