[关闭]
@Wahson 2016-07-23T23:16:49.000000Z 字数 1222 阅读 1064

Cookie使用总结

前端技术

设置cookie:cookie的添加一般是有服务器发起,服务器端通过给httpresponse添加cookie完成。

添加cookie
  1. //javax.servlet.http.HttpServletResponse
  2. Cookie cookie = new Cookie("COOKIE_KEY", "somevalue");
  3. cookie.setMaxAge(60);//设置 Cookie 有效期为1min
  4. cookie.setPath("/");//cookie的路径
  5. cookie.setDomain(".isuwang.com");//设置cookie的域
  6. httpServletResponse.addCookie(cookie);

cookie的path属性:用于设置能访问该cookie的最顶层的目录,比如path=/top,则只有/top目录下的网页可以访问该cookie。path=/,则根目录下所有网页都可以访问该cookie。
cookie的domain属性:只有domain域下的网页能访问改cookie。

删除cookie
  1. Cookie cookie = new Cookie("COOKIE_NAME", "somevalue");
  2. cookie.setMaxAge(0);//设置 Cookie 有效期为1min
  3. cookie.setPath("/");//cookie的路径
  4. cookie.setDomain(".isuwang.com");
  5. httpServletResponse.addCookie(cookie);
有几点要注意的地方

前端获取cookie的方法

  1. //当前页面能访问到的所有cookie,多个name-value对用分号(;)分隔
  2. var cookies = document.cookie;

引申一点

我们经常看到;JSESSIONID=XXXXX这样的cookie信息,顾名思义,服务器就是通过这个值标识同一个会话。在第一次访问服务器的时候,服务器会返回包含JSESSIONID的Set-Cookie,只要浏览器不关闭,浏览器会从第二次请求开始一直带上这个键值对到服务器,服务器就知道这是同一个会话发出的请求。

基于Web的app中使用cookie

前文介绍了前端获取cookie的方法(document.cookie),在浏览器中这种方式没有任何问题,

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注