cookies是什么意思?原理以及使用方法

存储客户端的状态
京东商城在没有登陆的情况下依然可以将商品加入购物车 , 那么这个购物车的数据存储到哪里呢?肯定不是 , 因为如果是它的话 , 每加入一件 , 再去访问其它商品 , 在加入一件 , 上一次商品就没有了 , 因为Http协议是无状态的 , 也就是说每个客户访问服务器端资源时 , 在未登录的情况下 , 服务器并不知道该客户端是谁 , 所以需要会话技术识别客户端的状态 。会话技术是帮助服务器记住客户端状态
会话技术和
从打开一个浏览器访问某个站点 , 到关闭这个浏览器的整个过程 , 成为一次会话 。会话技术就是记录这次会话中客户端的状态与数据的 。
:数据存储在客户端本地 , 减少服务器端的存储的压力 , 安全性不好 , 客户端可以清除:将数据存储到服务器端 , 安全性相对好 , 增加服务器的压力技术详解

cookies是什么意思?原理以及使用方法

文章插图
创建
= new ( , );
参数为的名称和的值 , 举例:= new ("" , "");
那么创建了一个 , 并且向中写入了数据= , 注意中不能写入中文 , 也就是说后面的验证码效验 , 如果是中文验证码 , 则不能用
如果我们将这个向客户端发送 , 那么相应头的形式是这样的
cookies是什么意思?原理以及使用方法

文章插图
设置在客户端的持久化时间
.(int );为秒
默认的生命周期是一个会话 , 就是说只要浏览器关系 , 他就没有了 , 如果不设置持久化时间 , 会存储在浏览器的内存中 , 浏览器关闭信息销毁(会话级别的) , 如果设置持久化时间 , 信息会被持久化到浏览器的磁盘文件里 , 设置多久时间 , 他就会存在多长时间
举例:
设置信息在浏览器的磁盘文件中存储的时间是10分钟 , 过期浏览器自动删除该信息.(10*60);
设置的携带路径
如果不设置携带路径 , 那么该信息会在访问产生该的web资源所在的路径都携带信息 , 比如/aa/的这个路径的产生了 , 那么只有在访问WWW/aa下的资源的时候才会带 , 如果访问WWW/a.jsp则不会带 , 因为他不是aa目录下的
示例:
.("/WEB16");代表访问WEB16应用中的任何资源都携带.("/WEB16/");代表访问WEB16中的时才携带信息.("/");访问服务器下的所有应用都携带这个
cookies是什么意思?原理以及使用方法

文章插图
向客户端发送:
.( );创建完成之后 , 只有发送才能到答响应体
删除客户端的:
如果想删除客户端的已经存储的信息 , 那么就使用同名同路径的持久化时间为0的进行覆盖即可
new相同name值的 , 值无所谓(new相同的name的会把前面相同name的覆盖)设置相同的 , 最好设置最大Age为0 , 才删除 , 必须全部一样然后.Add(这个)向响应头增加一个set-字段
第一次浏览器访问网站因为没有 , 所以请求行没有 , 假如他访问的 , new了一个 , 并且 。add这个 , 那么下次浏览器在访问这个网站资源(如果合适的话) , 他会在请求头中带上这个
cookies是什么意思?原理以及使用方法