CookieUtil工具类--根据名称返回cookie、根据名称返回value、新增cookie、删除cookie

package com.jt.util;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

 /**
     * 该工具API主要的任务
     *      1.根据cookie的名称 返回cookie对象
     *      2.根据cookie的名称 返回valve的值
     *      3.新增cookie方法
     *      4.删除cookie方法
     */
public class CookieUtil {

   
    
    /**
     * 
     * @param cookieName   需要匹配的cookie名
     * @param request   request对象
     * @return  返回一个cookie对象
     */
    public static Cookie getCookie(String cookieName, HttpServletRequest request){
        Cookie[] cookies = request.getCookies();
        if(cookies !=null && cookies.length >0) {
            for (Cookie cookie : cookies) {
                if (cookieName.equals(cookie.getName())) {
                    return cookie;
                }
            }
        }
        return null ;
    }
    
    /**
     * 
     * @param cookieName    需要匹配的cookie名
     * @param request    request对象
     * @return    返回cookie的值
     */
    public static String getCookieValue(String cookieName,HttpServletRequest request){
        Cookie cookie = getCookie(cookieName, request);
        return cookie ==null?null:cookie.getValue();
    }
    
    /**
     * 
     * @param cookieName   需要匹配的cookie名
     * @param cookieValue   设置的cookie值
     * @param path   设置路径下的能访问cookie
     * @param domain   设置作用域名能访问到cookie
     * @param maxAge  设置存活时间
     * @param response   响应信息
     */
    public static void addCookie(String cookieName, String cookieValue, String path,
                                 String domain, int maxAge, HttpServletResponse response){
        Cookie cookie = new Cookie(cookieName,cookieValue);
        cookie.setPath(path);
        cookie.setDomain(domain);
        cookie.setMaxAge(maxAge);
        response.addCookie(cookie);
    }
    
    /**
     * 
     * @param cookieName    需要匹配的cookie名
     * @param path  
     * @param domain
     * @param response
     */

    public static void deleteCookie(String cookieName,String path,
                                    String domain,HttpServletResponse response){

        addCookie(cookieName,"",path, domain, 0, response);
    }

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
httputil是一个常用的网络请求工具类,用于发送HTTP请求并获取响应。在使用httputil工具类发送请求时,可以通过设置请求的cookie来实现身份验证、会话管理等功能。 要设置cookie,首先需要创建一个HttpClient对象。HttpClient用于发送请求并获取响应。在创建HttpClient对象时,可以通过HttpClientBuilder类来设置一些自定义的配置,包括cookie的相关设置。 1. 创建HttpClient对象: ```java HttpClient httpClient = HttpClientBuilder.create().build(); ``` 2. 创建HttpPost或HttpGet对象,设置请求URL和其他相关参数。 3. 设置cookie: ```java CookieStore cookieStore = new BasicCookieStore(); BasicClientCookie cookie = new BasicClientCookie("cookie_name", "cookie_value"); cookie.setDomain("example.com"); cookie.setPath("/"); cookieStore.addCookie(cookie); HttpContext httpContext = new BasicHttpContext(); httpContext.setAttribute(HttpClientContext.COOKIE_STORE, cookieStore); ``` 这里创建了一个CookieStore对象,用于存储cookie。然后创建一个BasicClientCookie对象,设置cookie名称和值。可以通过setDomain()和setPath()方法设置cookie的域和路径。将cookie添加到cookieStore中。 然后创建一个HttpContext对象,并将cookieStore设置为其属性。将HttpContext对象传递给HttpClient对象的execute()方法,执行请求。 4. 发送请求: ```java HttpResponse response = httpClient.execute(httpPost, httpContext); ``` 通过以上步骤,就可以使用httputil工具类发送带有cookie的HTTP请求了。在发送请求时,服务器将根据提供的cookie进行身份验证或会话管理。 需要注意的是,htttputil工具类的具体使用方式可能会因具体的框架和版本而有所不同,可以根据实际情况进行相应的调整。以上是一个基本的示例,供参考使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值