🥯 Cookie
# 加载 Cookie
onLoadCookie(OnLoadCookie onLoadCookie) 设置加载Cookie回调函数: 加载Cookie时调用
- 参数
onLoadCookie: OnLoadCookie 接口实例 
Forest.post("/")
     // onLoadCookie回调函数: 加载Cookie时调用
    .onLoadCookie(((req, cookies) -> {
        // req 为Forest请求对象,即 ForestRequest 类实例
        // cookies 为Cookie集合, 需要通过请求发送的Cookie都添加到该集合
    }));
 1
2
3
4
5
6
2
3
4
5
6
# 保存 Cookie
onSaveCookie(OnSaveCookie onSaveCookie) 设置保存Cookie回调函数: 需要保存Cookie时调用
- 参数
onSaveCookie: OnSaveCookie 接口实例 
Forest.post("/")
     // onSaveCookie回调函数: 需要保存Cookie时调用
    .onSaveCookie(((req, cookies) -> {
        // req 为Forest请求对象,即 ForestRequest 类实例
        // cookies 为Cookie集合, 需要通过请求发送的Cookie都添加到该集合
    }));
 1
2
3
4
5
6
2
3
4
5
6
# 严格匹配模式 (v1.5.25)
默认情况下,只有符合条件 (和请求同域名、同URL路径、未过期) 的 Cookie 才能被添加到请求中
这是因为 Forest 的 Cookie 集合默认为严格匹配模式,如果想添加符合匹配要求的 Cookie,只需修改严格匹配为false即可
Forest.post("/")
    // onLoadCookie回调函数: 加载Cookie时调用
    .onLoadCookie(((req, cookies) -> {
        cookies.strict(false) // 设置为非严格匹配模式
        .addCookie(new ForestCookie("attr1", "foo")) // 不设域名,默认情况下也能添加
        .addCookie(new ForestCookie("attr2", "bar")) // 不设域名,默认情况下也能添加
        // 不设域名,只有在非严格匹配模式下可以添加到请求中
        .addCookie(new ForestCookie("attr3", "foobar").setDomain("xxx.com"));
    }));
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
帮助我们改善此文档  (opens new window)
  上次更新: 2025/06/24, 01:16:57