Cookie共享以及Cookie的特点和作用
Cookie共享
cookie共享问题?
1、假设在一个tomcat服务器中,部署了多个web项目,那么在这些web项目中cookie能不能共享?
默认情况下cookie不能共享
setPath(String path):设置cookie的获取范围。默认情况下,设置当期的虚拟目录
如果要共享,则可以将path设置为“/”
当前项目:
@WebServlet("/CookieDemo4") public class CookieDemo5 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //创建Cookie对象 Cookie cookie = new Cookie("msg", "张三"); //设置path,让当前服务器下部署的所有项目共享cookie信息 cookie.setPath("/"); //发送Cookie response.addCookie(cookie); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } }
其他项目:
@WebServlet("/CookieDemo2") public class CookieDemo2 extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //获取Cookie Cookie[] cookies = request.getCookies(); //获取数据,遍历Cookies if (cookies!=null){ for (Cookie c : cookies) { String name = c.getName(); String value = c.getValue(); System.out.println(name+":"+value); } } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } }
2、不同的tomcat服务器间cookie共享问题
setDomain(String path):如果设置一级域名相同,那么多个服务器之间cookie可以共享
setDomain(".baidu.com"):那么tieba.baidu.com和news.baidu.com中cookie可以共享
Cookie的特点和作用
1、cookie存储数据在客户端浏览器
2、浏览器对于单个cookie的大小有限制(4kb)以及对同一个域名下的总cookie数量也有限制(20个)
作用:
1、cookie一般用于存储少量的不太敏感的数据
2、在不登录的情况下,完成服务器对客户端的身份识别
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix