会话技术Cookie原理分析和Cookie发送多个Cookie
会话技术Cookie原理分析
基于响应头set-cookie和请求头cookie实现的
客户端给服务器发送一次请求,服务器给浏览器返回一次响应。因为有会话,我们得有多次请求应证这个过程。
首先第一次请求完成,服务器会携带一些数据响应给浏览器。
浏览器发现了这些数据之后,把这些数据保存在浏览器本地。
保存完成后,下一次请求又会把这些数据带着去发送下一次请求。
相当于这两次请求响应之间进行了数据的共享问题。
所以最终这个数据存储在客户端浏览器。
Cookie发送多个Cookie
可以创建多个Cookie对象,使用response调用多次addCookie方法发送cookie即可。
@WebServlet("/cookieD3") public class CookieD3 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //创建Cookie对象 Cookie c1 = new Cookie("msg", "hello"); Cookie c2 = new Cookie("name", "zhangsan"); //发送Cookie resp.addCookie(c1); resp.addCookie(c2); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); } }
获取Cookie类:
@WebServlet("/cookieD2") public class CookieD2 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //获取Cookie Cookie[] cs = req.getCookies(); //获取数据,遍历Cookies if (cs!=null){ for (Cookie c : cs) { String name = c.getName(); String value = c.getValue(); System.out.println(name+""+value); } } } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); } }
访问3在访问2就可以获取多个cookie
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix