用了很多搜索引擎,没有找到关于javaFx操作Cookie的方法,所以只能自己去跟源码。
设置Cookie方法如下:
CookieManager cookieManager = (CookieManager) CookieHandler.getDefault();
Map<String,List<String>> responseHeaders = new HashMap<>(2);
List<String> list = new ArrayList<>();
list.add("xxx=; expires=Tue, 02 Mar 2021 16:00:00 GMT; path=/; domain=.xx.com");
responseHeaders.put("Set-Cookie",list);
cookieManager.put(URI.create(webEngine.getLocation()), responseHeaders);
webEngine.getLocation() 可以填写自己需要设置的URL
说一下 CookieManager:
这个就是被调用的设置cookie的类,里面有几个可以使用的方法get()
和 put()
,这个put就有意思了,在源码里面会看到,这其是webview请求后解析headers的所以我们可以间接的操作任何cookie。
相关版本说明:
- JDK:15
- JavaFx:15.0.1