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

資訊專欄INFORMATION COLUMN

瀏覽器指紋跨域共享

rottengeek / 2646人閱讀

摘要:存儲都和瀏覽器相關,我們無法通過來標識一臺電腦,只能以瀏覽器作為設備維度來采集設備信息。即用戶電腦中一個瀏覽器就是一個設備。

概念:設備id 即設備指紋,用來表示用戶設備的唯一性
背景

最近在做用戶行為分析項目的開發(fā),需要采集用戶的設備信息,需要用設備指紋來唯一表示用戶操作設備。web 存儲都和瀏覽器相關,我們無法通過js 來標識一臺電腦,只能以瀏覽器作為設備維度來采集設備信息。即用戶電腦中一個瀏覽器就是一個設備。

問題

web 變量存儲,我們第一時間想到的就是 cookie,sessionStorage,localStorage,但是這3種存儲方式都和訪問資源的域名相關。我們總不能每次訪問一個網(wǎng)站就新建一個設備指紋吧,所以我們需要通過一個方法來跨域共享設備指紋

方法

我們想到的方案是,通過嵌套 iframe 加載一個靜態(tài)頁面,在 iframe 上加載的域名上存儲設備id,通過跨域共享變量獲取設備id,共享變量的原理是采用了iframe 的 contentWindow通訊,通過 postMessage 獲取事件狀態(tài),調(diào)用封裝好的回調(diào)函數(shù)進行數(shù)據(jù)處理

實現(xiàn)

SDK 采集端,調(diào)用方初始化的時候調(diào)用方法

collect.setIframe = function () {
      var that = this
      var iframe = document.createElement("iframe")
      iframe.src = "http://localhost:82/"
      iframe.style = "display:none"
      document.body.appendChild(iframe)
      iframe.onload = function () {
        iframe.contentWindow.postMessage("loaded","*");
      }

      //監(jiān)聽message事件
      window.addEventListener("message", function(){
            that.deviceId = event.data.deviceId

            console.log("獲取設備id",that.deviceId)

            sessionStorage.setItem("PageSessionID",helper.upid())
            helper.send(that.getParames(), that.eventUrl);
            helper.sendDevice(that.getDevice(), that.deviceUrl);
      }, false);
}

嵌套在 iframe 靜態(tài)頁面里的腳本

   
擴展閱讀

跨瀏覽器cookie
跨瀏覽器指紋識別
瀏覽器指紋追蹤
使用postMessage解決iframe跨域通信問題
window.postMessage

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

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

相關文章

  • Web 應用安全性: 使用這些 HTTP 頭保護 Web 應用

    摘要:綜上所述,認為沒有提供的保護,用戶會過得更好安全研究人員并不完全反對這一決定。內(nèi)容安全策略是一個額外的安全層,用于檢測并削弱某些特定類型的攻擊,包括跨站腳本和數(shù)據(jù)注入攻擊等。 這是關于web安全性系列文章的第 三 篇,其它的可點擊以下查看: Web 應用安全性: 瀏覽器是如何工作的 Web 應用安全性: HTTP簡介 目前,瀏覽器已經(jīng)實現(xiàn)了大量與安全相關的頭文件,使攻擊者更難利用漏...

    spademan 評論0 收藏0
  • 前端人員必須知道的三個問題

    摘要:第一個問題前端都做哪些事呢,前端都需要哪些技術呢前端發(fā)展的三個階段初級階段入門常見標簽,新增的,語義化標簽等等選擇器,背景,文本,鏈接,列表,盒模型,定位,浮動,新增的屬性柵格化系統(tǒng),按鈕,表單,導航數(shù)據(jù)類型,對象,函數(shù),運算符,語句,,選 第一個問題:前端都做哪些事呢,前端都需要哪些技術呢 前端發(fā)展的三個階段: 初級階段:(入門) html:常見標簽,html5新增的,語義化標簽等等...

    zollero 評論0 收藏0
  • 前端人員必須知道的三個問題

    摘要:第一個問題前端都做哪些事呢,前端都需要哪些技術呢前端發(fā)展的三個階段初級階段入門常見標簽,新增的,語義化標簽等等選擇器,背景,文本,鏈接,列表,盒模型,定位,浮動,新增的屬性柵格化系統(tǒng),按鈕,表單,導航數(shù)據(jù)類型,對象,函數(shù),運算符,語句,,選 第一個問題:前端都做哪些事呢,前端都需要哪些技術呢 前端發(fā)展的三個階段: 初級階段:(入門) html:常見標簽,html5新增的,語義化標簽等等...

    王晗 評論0 收藏0

發(fā)表評論

0條評論

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