java - 从 webengine JavaFX 中删除特定的 cookie

标签 java javafx session-cookies httpcookie javafx-webengine

我想删除一些由 JavaFX 网络引擎生成的特定 HTTP cookie。 Chrome 浏览器允许我们删除 httponly cookie,这意味着这可以通过编程实现。

我可以使用

删除所有cookie
java.net.CookieManager manager = new java.net.CookieManager();
manager.getCookieStore().removeAll();

使用这个用户也从我的应用程序中注销。我希望能够删除除为我的应用程序生成的 cookie 之外的所有 cookie。 或者是否可以使用 javascript 删除相同的 cookie。

最佳答案

任何正在寻找解决方案的人。这里是。 在 javafx 的 main 方法的开头设置它。

cookieManager =  new CookieManager();
cookieManager.setCookiePolicy(CookiePolicy.ACCEPT_ALL);
CookieHandler.setDefault(cookieManager);

然后在任何事件中(我是在点击按钮时做的)调用它

CookieStore cookieJar =  Main.cookieManager.getCookieStore();
List<HttpCookie> cookies =  cookieJar.getCookies();

for (HttpCookie ck: cookies) {
if(ck.getName().equals("JSESSIONID")){
          System.out.println("JSESSIONID");
   }else{
          ck.setMaxAge(0);
          System.out.println("CookieHandler retrieved cookie: " + ck);
   }
}

我希望这对某人有所帮助,因为我花了一整天的时间寻找解决方案。

关于java - 从 webengine JavaFX 中删除特定的 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29646437/

相关文章:

java:如何通过管道(stdin/stdout)读取和写入进程

java - 如何测试互联网速度(JavaSE)?

java - 当路径指向 JAR 文件内时将 SUBREPORT_DIR 传递给子报告 [Jasper Reports 4.5]

Java - 从通用方法返回正确的类型

javafx - FXMLLoader getController返回NULL?

php - 如何在zend框架中设置cookie?

java - 正则表达式语法 javafx

java - 在 fxml 布局中使用常量

php - 使用 IP 地址浏览网站时 PHP session 是否可能过期?

javascript - 使用js和/或cookie保存切换的类状态?