会话及会话技术(Cookie和Session)之Cookie篇

目录

前言

1.什么是Cookie

 2.Cookie API

总结


前言

        用户通过浏览器访问Web应用时,服务器需要对用户的状态进行跟踪。例如,用户登陆时自动填充账号密码。在视频网站点击我的收藏时,跳转到一个新的页面,需要根据用户的身份找到用户收藏的视频。在Web开发中,服务器跟踪用户信息的技术称为会话技术

        由于HTTP是无状态请求,即每一次请求都是独立的请求,不能保存记录信息因此Cookie和Session应运而生。


1.什么是Cookie

        去商场购物时,商场经常会赠送给顾客一个购物卡。顾客再去该商场购物时,会带上购物卡。购物卡上会有顾客的消费次数和消费额度等信息,商场根据顾客的消费情况给予该顾客优惠。

      在Web开发中,cookie就相当于会员卡。用户通过浏览器访问Web应用时,服务器会将一些信息放在Cookie中并发送给客户端。当用户通过该浏览器再次访问服务器时,服务器端会根据Cookie中的信息做出正确响应。

 2.Cookie API

Cookie常用方法

 列举几个常用的方法

(1)public void setMaxAge(int expiry);getMaxAge();

       setMaxAge(int expiry)和getMaxAge()方法分别用于于设置和返回Cookie在浏览器上保持的有效秒数。

      若设置为一个正整数则浏览器会将Cookie保存在本地硬盘中,从当前时间开始到设置的指定秒数Cookie都会存活。并且同一台计算机上运行的该浏览器都可以使用该Cookie信息。

      若设置为一个负整数,Cookie信息会被保存在该浏览器的缓存中。浏览器关闭,Cookie信息删除。

       若设置为0,则浏览器会立即删除这个Cookie信息。

(2)public void setPath(String uri);

    假设tomcat/webapp下有两个应用webapp_a和webapp_b。

    若webapp_a下创建了一个Cookie,默认情况下该Cookie只能在webapp_a下使用。

  • 设置为cookie.setPath("/") ---------------整个webapp文件夹下的所有应用均可使用。
  • 设置为cookie.setPath("/webapp_b/") ---------------仅在webapp_b文件夹下可使用。
  • 设置为cookie.setPath("/webapp_b/jsp") ---------------仅在webapp_b/jsp文件下可使用。

(3)public void setDomain(String pattern);

      public void setDomain(String pattern)针对Cookie的domain属性。

      一般的场景是通过在父级域设置Cookie,然后在各个子级域拿到存在父级域中的Cookie值。

      如域A为t1.test.com,域B为t2.test.com,那么在域A生产一个令域A和域B都能访问的cookie就要将该cookie的domain设置为.test.com;如果要在域A生产一个令域A不能访问而域B能访问的cookie就要将该cookie的domain设置为t2.test.com。


总结

下篇总结一下Session

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值