2015-10-20 29 views
0

當我使用谷歌瀏覽器訪問我的網站時,Chrome顯示(在「Cookies和網站數據」中)它使用的是LocalStorage和IndexedDB。我不是故意這樣做的,我想知道爲什麼這些出現在列表中。我如何知道我的網站爲什麼使用LocalStorage和IndexedDb)?

該網站確實使用了一些第三方的東西,特別是(可能)谷歌通用分析和谷歌標籤管理器,但我檢查了這兩個JS源代碼(包括動態下載的文件),以及可能找不到對LocalStorage或IndexedDB的明顯引用(儘管讀取縮小的代碼並不容易)。

有什麼方法可以告訴使用這些功能的是什麼?

FWIW它是一個ASP.NET MVC5網站,但我懷疑這是相關的。

+0

在chrome開發工具的資源選項卡中顯示什麼內容? – Wobbles

+0

@Wobbles:我沒有看,但沒有:沒有顯示實際值... –

+0

也許這只是谷歌瀏覽器的緩存文件的解釋呢? – Wobbles

回答

1

如果您沒有特定的代碼,那麼第三方分析/廣告可能是罪魁禍首。這是我想嘗試:

  1. 使用chrome://settings/cookies和刪除存儲爲您的網站
  2. 識別頁面中您的網站,使數據被寫入
  3. 修改的頁面有一個內嵌腳本在加載任何其他腳本之前,用虛擬函數填充存儲API:

    window.indexedDB.open = function(){ throw Error('Indexed DB'); }; window.localStorage.setItem = function(){ throw Error('DOM Storage'); };
  4. 重新加載打開開發者控制檯的頁面。如果幸運的話,你會看到堆棧跟蹤引發的異常,指向試圖使用這些函數的代碼。

  5. 如果不是,請將這些throw行更改爲debugger;以調用調試器,然後重新加載頁面。調試器中的調用堆棧應該顯示哪些庫正在使用存儲API。
+0

所有偉大的想法,謝謝! –

相關問題