Cookie 饼干

目录

什么是Cookie?

Cookie 是如何传给浏览器

Cookie 设置生命控制

Cookie的Path属性


什么是Cookie?

1、Cookie翻译过来是饼干的意思。

2、Cookie是服务器通知客户端保存键值的一种技术。

3、客户端有了Cookie后,每次请求都发送给服务器。

4、每个Cookie的大小不能超过4KB。

5、Cookie是保存在客戶端的

Cookie 是如何传给浏览器

1、创造一个Cookie对象   构造方法 :    Cookie(String key,String value) 

2、通过  response.addCookie(Cookie cookie)     提醒浏览器设置(添加)Cookie

Cookie 设置生命控制

设置Cookie 立即消失 cookie.setMaxAge(0) 

设置Cookie 随着session的消失而消失 cookie.setMaxAge(-1) 默认为 -1

设置Cookie 可存活时间 cookie.setMaxAge(int i) i秒

Cookie的Path属性

如果服务器响应给浏览器一个设置了Path的Cookie,那么这个Cookie只有在访问设置的Path路径下才可以获取得到该Cookie

@Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        Cookie cookie = new Cookie("name","测试");
        c.setPath(req.getContextPath() + "/aaa");
        resp.addCookie(cookie);
    }
// @WebServlet("/cookie") 在这个路径下是获取不到该Cookie的
@Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        Cookie[] cookies = req.getCookies();
        System.out.println("--------cookie");
        for (Cookie cookie : cookies) {
            if("name".equals(cookie.getName())){
                System.out.println(cookie.getValue());
            }
        }
    }
// @WebServlet("/aaa/test") 在该路径下即可获取得到gaiCookie
 @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("--------test");
        Cookie[] cookies = req.getCookies();
        for (Cookie cookie : cookies) {
            if("name".equals(cookie.getName())){
                System.out.println(cookie.getValue());
            }
        }
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值