码迷,mamicode.com
首页 > 其他好文 > 详细

Cookie

时间:2019-07-31 12:57:13      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:local   http   localhost   cat   生命周期   格式   之间   pat   键值对   

一、Cookie的概念

  Cookie是由服务器创建,然后通过响应发送给客户端的一个键值对。

  特点:

    1.客户端会保存Cookie,并会标注出Cookie的来源(哪个服务器的Cookie)。

    2.当客户端向服务器发出请求时会把所有这个服务器Cookie包含在请求中发送给服务器,这样服务器就可以识别客户端了。

    3.不同浏览器之间是不共享Cookie的。

技术图片

二、注意点:

  1)在tomcat8.0之前,Cookie中不允许存放中文

  2)在tomcat8.0之后,Cookie中不建议存放中文

  3)Cookie的value不允许包含空格以及某些特殊符号

  4)重复设置相同名称的Cookie会覆盖前面的;

三、Cookiehttp头:

  (1)请求头:客户端发送给服务器;

    格式:Cookie: a=A; b=B; c=C。即多个Cookie用分号隔开;

  (2)响应头:服务端发送给客户端;

    格式:一个Cookie对象一个Set-Cookie;

      Set-Cookie: a=A

      Set-Cookie: b=B

      Set-Cookie: c=C

二、Cookie创建(构造)

  new Cookie(String name,String value);

三、Cookie获取/设置:

  (1)设置:调用response方法;

    response.addCookie(Cookie cookie);

  (2)获取:调用request方法;

    Cookie[] request.getCookies();

    //获取到的不是原来的cookie对象,是根据浏览器存的键值对创建的新cookie对象;

四、生命周期:

  (1)设置最大存活时间:void setMaxAge(int second);

    //参数second-1:表示一旦浏览器关闭则销毁;

          0:表示直接作废,可用于删除原有的Cookie;

          60*60:单位是秒;表示存活1个小时,即使浏览器关闭或者电脑重启,都保留一个小时;

  (2)获取最大存活时间:int getMaxAge()

五、路径设置:

  (1)路径设置:cookie.setPath(“/cookietest/servlet”);

    //如果没有设置路径,那么Cookie路径默认为当前资源的路径;

    例如:

      (1)访问http://localhost:8080/cookietest/AServlet时添加的Cookie默认路径为/cookietest;

      (2)访问http://localhost:8080/cookietest/servlet/BServlet时添加的Cookie默认路径为/cookietest/servlet;

      (3)访问http://localhost:8080/cookietest/jsp/BServlet时添加的Cookie默认路径为/cookietest/jsp;

 

 

Cookie

标签:local   http   localhost   cat   生命周期   格式   之间   pat   键值对   

原文地址:https://www.cnblogs.com/Tractors/p/11275531.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!