我需要从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创建它。

10-06 11:04