原生js 跨域訊息傳遞

2021-09-09 00:27:39 字數 368 閱讀 5588

跨域訊息傳遞:postmessage()

1、相容性問題:ie8及其以上瀏覽器和其它主流瀏覽器都已經支援

2、使用範圍:跨iframe、跨頁面、跨域

3、使用方法:

傳送訊息:postmessage( data, scope ) data值需要傳遞的訊息,scope指定傳送給那些域

監聽訊息:使用事件監聽方法監聽(addeventlistener/attachevent)

之所以可以使用事件監聽方法監聽,是因為當呼叫postmessage方法時,會觸發message事件,並傳遞給事件處理程式乙個事件物件。

4、事件物件的屬性:

data:傳遞的訊息

source:訊息源自的window物件

postMessage 跨域訊息傳遞

window.postmessage 方法允許來自乙個文件的指令碼可以傳遞文字訊息到另乙個文件裡的指令碼,而不用管是否跨域。乙個文件裡的指令碼還是不能呼叫在其他文件裡方法和讀取屬性,但他們可以用這種訊息傳遞技術來實現安全的通訊。這項技術稱為 跨文件訊息傳遞 又稱為 視窗間訊息傳遞 或者 跨域訊息傳遞...

原生js封裝ajax,實現跨域請求

需要ajax跨域請求,用cors跨域方案。服務端設定 header access control allow origin header access control allow headers x requested with 後端需要的頭資訊,原生ajax以表單方式post提交資料,json資料...

原生js封裝ajax,實現跨域請求

需要ajax跨域請求,用cors跨域方案。服務端設定 header access control allow origin header access control allow headers x requested with 後端需要的頭資訊,原生ajax以表單方式post提交資料,json資料...