2012-02-09 18 views
0

我有一個需求,我需要確定是否有任何頁面正在存儲或從HTML5數據存儲區中讀取。我正在使用HTMLUnit來瀏覽網頁。我在sourceforge列表中檢查了HTML5存儲的支持已經建立。 HTMLUnit實際上是否爲localStorage,sessionStorage等創建對象?如果是,我如何訪問它們?我可以使用HTMLUnit訪問HTML5存儲區

我也想過抓取頁面上的所有Javascript並搜索關鍵字,但是有沒有比這更好的方法?

+0

對不起,我沒有完全明白這個問題。您需要一種方法來查明網頁是否包含HTML 5文檔類型? – 2012-02-09 20:44:13

+0

嘿感謝評論。我有興趣確定任何網頁是否將數據存儲在此處或從此處定義的網絡存儲接口讀取數據:http://www.w3.org/TR/webstorage/#the-storage-interface。通常,這是通過javascript命令完成的,例如'localStorage.setItem('key','value');'或'localStorage.getItem('key');'。 HTMLUnit是否提供了通過網頁識別這些存儲空間的方法? – 2012-02-09 22:58:14

回答

0

一個簡單的測試可能是傳遞一個執行setItem('key','value')存儲,然後執行getItem('key')並檢查結果的javascript源代碼。如果返回一些腳本對象,則表示成功。如下所示:

ScriptResult result = currentPage.executeJavaScript("window.localStorage.setItem('some_key','some_value');window.localStorage.getItem('some_key');"); 
System.out.println("script result: "+result.getJavaScriptResult().toString()); 
相關問題