国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JavaScript HTML5腳本編程——“跨文檔消息傳遞”的注意要點

TerryCai / 1184人閱讀

摘要:跨文檔消息傳送,有時候也簡稱為,指的是來自不同域的頁面間傳遞消息。接收到消息時,會觸發對象的事件。接受到消息后驗證發送窗口的來源是至關重要的。基本的檢測模式如下。

跨文檔消息傳送(cross-document messaging),有時候也簡稱為XDM,指的是來自不同域的頁面間傳遞消息。例如,www.wrox.com域中的一個頁面與一個位于內嵌框架中的p2p.wrox.com域中的頁面通信。

XDM的核心是

postMessage()方法。在HTML5規范中,除了XDM部分之外的其它部分也會提到這個方法名,但都是為了同一個目的:向另一個地方傳遞數據。對于XDM而言,“另一個地方”指的是包含在當前頁面中的iframe元素,或者由當前頁面彈出的窗口。

postMessage()方法接收兩個參數:一條消息和一個表示消息接收方來自哪個域的字符串。

第二個參數對保障安全通信非常重要,可以防止瀏覽器把消息發送到不安全的地方。來看下面的例子。

var iframWindow = document.getElementById("myframe").contentWindow;
iframWindow.postMessage("A secret", "http://www.w3cmm.com");

接收到XDM消息時,會觸發window對象的message事件。這個事件是以異步形式觸發的,因此從發送消息到接受消息(觸發接受窗口的message事件)可能要經過一段時間的延遲。觸發message事件后,傳遞給

onmessage處理程序的事件對象

包含以下三方面的重要信息:

data:作為postMessage()第一個參數傳入的字符串數據。

origin:發送消息的文檔所在的域,例如“http://www.w3cmm.com”。

source:發送消息的文檔的window對象的代理。這個代理對象主要用于在發送上一條消息的窗口中調用postMessage()方法。如果發送消息的窗口來自同一個域,那這個對象就是window。

接受到消息后驗證發送窗口的來源是至關重要的?;镜臋z測模式如下。

EventUtil.addHandler(window, "message", function (event) {
    //確保發送消息的域是已知的域
    if (event.origin == "http://www.w3cmm.com") {
        //處理接收到的數據
        processMessage(event.data);
        //可選:向來源窗口發送回執
        event.source.postMessage("Received!", "http://p2p.w3cmm.com");
    }
});

還是要提醒大家,event.source大多數情況下只是window對象的代理,并非實際的window對象。不能通過這個代理對象訪問window對象的其它任何信息。使用postMessage()時,最好還是只傳字符串。最佳選擇是先在要傳入的數據上調用JSON.stringify(),通過postMessage()傳入得到的字符串,然后再在onmessage事件處理程序中調用JSON.parse()。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/78633.html

相關文章

  • 《同源策略》簡單介紹

    摘要:概述同源策略是對代碼能夠操作哪些內容的一條完整的安全限制,也是由提出的一個著名的安全策略。同源策略的目的同源政策的目的,是為了保證用戶信息的安全,防止惡意的網站竊取數據。 [TOC] 1、概述 同源策略是對JavaScript代碼能夠操作哪些WEB內容的一條完整的安全限制,也是由Netscape提出的一個著名的安全策略。所謂同源簡單來說就是三個相同,**1、域名相同2、協議相同3、端口...

    gggggggbong 評論0 收藏0
  • 《同源策略》簡單介紹

    摘要:概述同源策略是對代碼能夠操作哪些內容的一條完整的安全限制,也是由提出的一個著名的安全策略。同源策略的目的同源政策的目的,是為了保證用戶信息的安全,防止惡意的網站竊取數據。 [TOC] 1、概述 同源策略是對JavaScript代碼能夠操作哪些WEB內容的一條完整的安全限制,也是由Netscape提出的一個著名的安全策略。所謂同源簡單來說就是三個相同,**1、域名相同2、協議相同3、端口...

    vpants 評論0 收藏0
  • htm5新特性(轉)

    摘要:轉自今天來談談前端面試中基本上每次一面都會被問到的一個問題,那就是的新特性了。元素,表示生成密匙。和通過設置和特性,可以將輸入框的數值輸入范圍限定在最低值和最高值之間。一旦為某輸入型控件設置了特性,那么此項必填,否則無法提交表單。 轉自:http://hyuhan.com/2017/07/06/... 今天來談談前端面試中基本上每次一面都會被問到的一個問題,那就是html5的新特性了。...

    focusj 評論0 收藏0
  • 高程3總結#第16章HTML5腳本編程

    摘要:腳本編程跨文檔消息傳遞跨文檔消息傳送,簡稱為,指的是來自不同域的頁面間傳遞消息的核心是方法,在規范中,除了部分之外的其他部分也會提到這個方法名,但都是為了同一個目的,向另一個地方傳遞參數。第一個頁面加載時為空 HTML5腳本編程 跨文檔消息傳遞 跨文檔消息傳送,簡稱為XMD,指的是來自不同域的頁面間傳遞消息 XMD的核心是postMessage()方法,在HTML5規范中,除了XDM...

    silvertheo 評論0 收藏0

發表評論

0條評論

TerryCai

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<