[英]How to load new file in WebView?
我的程序有問題。 我有一個帶web視圖的階段,我想有時更改HTML文件,但我無法重新加載Web視圖並動態查看我的更改。
public void showme(String what) {
try {
WebEngine webEngine = webvw.getEngine();
System.out.print("vsengine_projects/" + xoxo + "/" + what);
URL url = this.getClass().getResource("vsengine_projects/" + xoxo + "/" + what);
webEngine.load(url.toString());
System.out.println("KK");
} catch (Exception e) {
System.err.println("EXC " + e);
}
}
這段代碼有效,但僅適用於HTML文件的第一個版本,當我在HTML文件中更改某些內容並再次調用showme()時,沒有任何反應。 Html文件位於本地目錄中。 是否有可能動態重新加載Web視圖?
我想你需要在顯示之前清除緩存。 也許在函數開頭調用以下代碼:
java.net.CookieHandler.setDefault(new java.net.CookieManager());
我找到了如何從以下引用的答案中清除會話數據:
JavaFX WebView的會話cookie存儲在
java.net.CookieHandler
。要自己管理cookie,請創建
java.net.CookieManager:
新實例java.net.CookieManager:
java.net.CookieManager manager = new java.net.CookieManager();
然后將其設置為默認值:
java.net.CookieHandler.setDefault(manager);
要清除cookie,只需調用removeAll方法:
manager.getCookieStore().removeAll();
或者只是創建cookie管理器的新實例並將其設置為默認值:
java.net.CookieHandler.setDefault(new java.net.CookieManager());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.