1.会话技术基本概念
会话技术指的是用户开一个浏览器,访问一个网站,只要不关闭浏览器,不管用户点击多少超链接,访问多少资源,直到用户关闭浏览器,整个过程我们称之为一次会话。
会话的好处举例:
- 在我们录入账号密码的时候,勾选自动登录,当我们下次访问的时候就不用输入密码了
- 网上商城,保存我们浏览过的商品
2.Cookie
Cookie的基本介绍
- 网页之间的交互是通过http传输协议传输数据的。而HTTP是无状态协议,所谓的无状态协议指的是,服务器不知道是谁在访问网页。
- 为了能确认用户的信息,就提出了Cookie技术,这样访问的用户都有自己的标识,服务器就能通过Cookie确认用户的信息了。
Cookie的基本工作流程
浏览器访问服务器,如果服务器需要保存该用户的访问记录,就是用response向浏览器发送一个Cookie,浏览器会把Cookie保存起来。当用户再次访问的时候,浏览器会把请求和Cookie一起交给服务器。
Cookie API
- Cookie类用于创建一个Cookie对象
- response定义了一个addCookie方法,向响应头中增加一个对应的Set-Cookie字段
- request定义了一个getCookie方法,用于获取客户端提交的Cookie
- 常用的方法:
- public Cookie(String name , String value)
- setValue,getValue
- setMaxAge,getMaxAge
- setPath,getPath
- setDomain,getDomain
- getName
创建Cookie示例
//设置response编码
response.setContentType("text/html;charset=UTF-8");
//创建Cookie对象
Cookie cookie = new Cookie("username","test");
//设置Cookie时间
cookie.setMaxAge(100);
//向浏览器给一个Cookie
response.addCookie(cookie);
response.getWriter().write("我已经向浏览器发送了一个Cookie");
Cookie特征
Cookie具有不可跨域性,就是Cookie会根据域名把对应的Cookie提交到服务器。
Cookie保存字符(包括中文)
image.png数据解码过程
image.png
Cookie的有效期
Cookie有效期通过setMaxAge()来设置。如果MaxAge是正数则Cookie会被写入硬盘中,如果MaxAge是负数,Cookie是临时性的,仅仅在本浏览器有效,关闭浏览器就失效。Cookie的默认值为-1;如果MaxAge为0,则表示删除该Cookie
Cookie的域名
Cookie的domain属性决定运行访问Cookie的域名,domain的值规定为".域名"
Cookie的路径
Cookie通过setPath方法设置允许访问Cookie的路径
Cookie的安全属性
1.可以通过设置Cookie的secure属性为true,浏览器指挥在HTTPS和SSL等安全协议中传输Cookie
2.使用MD5加密
应用
1.电商
2.记住用户的账号密码,自动登录等
网友评论