Cookie原理及使用细节
原创
©著作权归作者所有:来自51CTO博客作者夏志121的原创作品,请联系作者获取转载授权,否则将追究法律责任
目录
一、Cookie原理
二、Cookie使用细节
Cookie存活时间
Cookie存储中文
一、Cookie原理
Cookie的实现是基于HTTP协议的
响应头:set-cookie
请求头:cookie
浏览器开发者工具:
访问aServlet时:
访问bServlet时:
二、Cookie使用细节
Cookie存活时间
默认情况下,Cookie存储在浏览器内存中,当浏览器关闭,内存释放,则Cookie被销毁
setMaxAge(int seconds):设置Cookie存活时间
1、正数:将Cookie写入浏览器所在电脑的硬盘,持久化存储。到时间自动删除
2、负数:默认值,Cookie在当前浏览器内存中,当浏览器关闭,则Cookie被销毁
3、零:删除对应Cookie
//发送cookie
//1.创建cookie对象
Cookie cookie = new Cookie("username","zs");
//设置存活时间 1周7天
cookie.setMaxAge(60 * 60 * 24 * 7);
//2.发送cookie,response
response.addCookie(cookie);
浏览器设置的Cookie时间变化:
Cookie存储中文
Cookie不能直接存储中文
如需要存储,则需要进行转码:URL编码
//发送cookie
String value = "张三";
//URL 编码
value = URLEncoder.encode(value,"UTF-8");
System.out.println(value);
Cookie cookie = new Cookie("username",value);
//2.发送cookie,response
response.addCookie(cookie);
访问aServlet和bServlet时控制台输出: