Cookie的常用方法、删除Cookie的方式

删除浏览器中的Cookie

在cookie的API中没有提供直接将cookie删除的方法, 可以通过别的方式间接删除cookie

代码示例:删除名称为cart的cookie: 可以向浏览器再发送一个同名的cookie(即名称也叫cart),并设置cookie的最大生存时间为零,由于浏览器是根据cookie的名字来区分cookie,如果前后两次向浏览器发送同名的cookie,后发送的cookie会覆盖之前发送的cookie,而后发送的cookie也设置了生存时间为零,因此浏览器收到后也会立即删除!

//创建一个名称为cart的cookie

Cookie c = new Cookie( "cart" , "" );

//设置cookie的最大生存时间为零

c.setMaxAge( 0 );

//将cookie添加到响应中,发送给浏览器

response.addCookie( c );

Cookie的常用方法

cookie.getName() //获取cookie的名字

cookie.getValue() //获取cookie中保存的值

cookie.setValue() //设置/修改cookie中保存的值(没有setName方法,因为cookie的名字无法修改)

cookie.setMaxAge() //设置cookie的最大生存时间

setMaxAge方法:设置cookie的最大生存时间

如果不设置该方法,cookie默认是会话级别的cookie,即cookie默认生存时间是一次会话。当浏览器关闭,会话结束时,cookie就会被销毁。(cookie默认会保存在浏览器的内存中,当浏览器关闭,内存会释放,cookie也会随着内存的释放而销毁)

如果设置了该方法, cookie将不会保存到浏览器的内存中,而是以文件形式保存到浏览器的临时文件夹中,也就是硬盘上,这样即使关闭浏览器,浏览器内存会释放,保存到硬盘上的cookie文件也不会销毁,再打开浏览器,还可以获取硬盘上保存的cookie。

//2.创建一个Cookie对象, 将商品信息保存到cookie中

Cookie cookie = new Cookie( "cart", prodName  );

//设置cookie的最大生存时间, 单位:秒

cookie.setMaxAge( 60*60*24*30 );

//3.将cookie添加到响应中, 发送给浏览器保存

response.addCookie( cookie );

版权声明:本文为uzi2200原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。