一个无比熟悉的名词啊。。。但教程中说cookies在实际开发中不是很常用,session用得更多。
一个网站证明你登录信息的两种方式:
- cookies技术。是一种客户端技术。服务器给客户端一个信息,客户端下次访问服务端带上这个cookies就能自证身份。
- session技术。是一种服务器技术。服务器登记你的信息保存在服务器上,下次来的时候对id进行匹配。
- 常见的应用就是:网站登录后,一段时间内不用重复登录,或者访问这个网站其他的url也已变为登录状态。
检查cooike信息与设置cookie信息:
检查request中的cooike:
Cookie[] cookies = req.getCookies(); for (int i=0;i<cookies.length;i++) { if (cookies[i].getName()=="ID") { System.out.println("你来过该网站"); if (cookies[i].getValue()=="nannan") { System.out.println("欢迎"); } } else { System.out.println("这是你第一次来该网站"); } }
设置response中的cookie:
Cookie cookie=new Cookie("ID","nannan");
cookie.serMaxAge(24*60*60); resp.addCookie(cookie);
浏览器审查中看到cookies:
我们常在network,现在看的是application中
看到cookies以键值对的形式存储,且value为string类型。
默认的cookie信息是关闭浏览器后失效,可以手动设置失效时长
cookies细节问题: