Cookie的使用(Java、JavaScript)

1、Cookie简介

Cookie是一种会话技术,它用于将会话过程中的数据保存到用户的浏览器中,从而使浏览器和服务器可以更好的进行数据交互。

2、Cookie特点

cookie是以文本形式保存(.txt)
cookie存储信息不安全(不能存放重要的信息)
cookie中有域(domain)和路径的概念,浏览器是一个比较安全的环境,所以不同的域之间不能直接访问(js的同源策略限制)

3、Cookie操作(Java)

//获取cookie(request为HttpServletRequest)
Cookie[] cookies = request.getCookies();
for (Cookie cookie : cookies){
    System.out.println(cookie.getName()+":"+cookie.getValue());
}

//操作cookie(response为HttpServletResponse)
Cookie c = new Cookie("username","peter");// 新建一个Cookie对象
c.setPath("/");                           // 路径(一般为/,表示同一服务器内所有应用都可访问到该Cookie,视具体情况)
c.setDomain(".zxm.com");               // 设置域名(**设置为.zxm.com域名的话,则xxx.zxm.com的域名都可共享此cookie,不然就跨域无法共享**)
c.setMaxAge(24*60*60);                    // 设置过期时间1天,以秒为单位
//c.setMaxAge(0);                    // 设置生命周期为0,表示将要删除
//c.setMaxAge(Integer.MAX_VALUE);     //设置永久
response.addCookie(c);                    // 保存cookie到客户端

4、Cookie操作(JavaScript)

简单形式:

//没有设置expires时间的话其实就是默认关闭浏览器失效
document.cookie ='username=peter;domain=.zxm.com;path=/'
//设置max-age为0也能移除cookie,也可以用以下整理的方法

以下是整理的方法:

//添加cookie
function setCookie(name,value,time){ 
    var date= new Date(); 
    date.setDate(date.getDate()+time); 
    document.cookie = name+"="+value+";expires="+date; 
} 

//获得cookie
function getCookie(name){ 
    var arr = document.cookie.split(";"); 
    for(var i=0; i<arr.length; i++){ 
    var arr2 = arr[i].split("="); 
        if(arr2[0] == name){ 
            return arr2[1]; 
        } 
    } 
    return null; 
} 

//删除cookie
function removeCookie(name){ 
    setCookie(name,"",0) 
} 

有更好或更齐全的也可以在评论区推荐下哟!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

谦风(Java)

一起学习,一起进步(✪ω✪)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值