我需要从JavaFx WebEngine读取和写入安全和不安全的Cookie。
我整天都在解决这个问题,并尝试了以下方法:
从cookie存储区中获取cookie->在这里,我仅获取不带安全标志的cookie。有关此问题的更多信息,请参见:Setting a cookie using JavaFX's WebEngine/WebView
尝试通过自行编写的cookie存储区获取cookie->相同的问题
尝试使用JavaScript获取Cookie->受安全限制的限制
尝试从WebEngine dom中获取cookie->没有结果
我希望有一个人可以帮助我...
最佳答案
好的,
如果每个人都有相同的问题,请使用以下解决方案:
cookie存储区中的get(URI)函数已损坏,并且仅传递安全标志为false的cookie。
这不起作用:
for(URI uri : manager.getCookieStore().getURIs()) {
for(HttpCookie httpCookie : manager.getCookieStore().get(uri)) {
System.out.println("test> " + uri.toASCIIString() + " # " + httpCookie.toString() + " - "+httpCookie.getSecure());
}
}
这正在工作:
for(HttpCookie httpCookie : manager.getCookieStore().get(uri)) {
System.out.println("test> " + " # " + httpCookie.toString() + " - "+httpCookie.getSecure());
}
如果您需要特定cookie的URI,则必须从HttpCookie.getDomain()getter创建它。