以前没怎么使用过cookie,昨天朋友准备使用cookie实现一个小功能,不过无论如何怎么也取不到自定义的cookie,浏览器返回的只是JSESSIONID以及DWRSESSIONID。之后上网查询资料,问题得以解决。
1.获取cookie:
Cookie[] cookies = request.getCookie(); // 这里的request是指HttpServletRequest
for(Cookie cookie : cookies)
....//执行操作
2.存储cookie:
Cookie cookie = new Cookie(); // 生成一个cookie
// 对cookie进行赋值
cookie.setName("coder");
cookie.setValue("at work");
如果仅仅如上面的设置并且存储cookie,这样服务器端无法取到cookie(只能在特定的路径下才能取到);
// 下面设置非常关键,比如说项目路径为:localhost:8080/coderatwork/
cookie.setPath("/coderatwork/"); //设置cookie访问路径,默认是请求路径(如request访问的路径是:localhost:8080/coderatwork/php,那么默认只能是该路径才能访问设置的cookie)
// cookie.setDomain(); 可以设置域名(域名以'.'开始,如www.rogeshu.com,那么这里参数为:.rogeshu.com),域名可以为其他网站的域名,你可以设置www.helloworld.com,那么拥有www.helloworld.com的网站就能访问该cookie
最后一步:存储cookie
response.addCookie(cookie); // 使用response(HttpServletResponse)保存cookie
之后使用 步骤1 中的方法,便能够得到自定义的cookie。
See You, Coders.....