Cookie简述

1. 概念

一种客户端会话技术,可以将一些少量的数据保存在客户端。

2. 快速使用

  • 步骤

    1. 创建cookie对象,并设定数据

      • new Cookie(String name, String value);
    2. 发送cookie对象到客户端(将cookie加载到response)

      • response.addCookie(Cookie cookie) ;
    3. 获取cookie(获取从客户端返回的request获取cookie)

      • Cookie[] request.getCookies() ;
    4. 代码

      //设定cookie数据,创建cookie对象
      Cookie c=new Cookie("msg","hello");
      //发送cookie对象到客户端
      response.addCookie(c);
      //获取cookie并打印
      Cookie[] cs = request.getCookies();
      if(cs!=null){
      for (Cookie c : cs) {
      String name = c.getName();
      String value = c.getValue();
      System.out.println(name+":"+value);
      }
  • cookie的一些小细节

    1. 一次可不可以发送多个cookie?

      • 可以,同时也可以接收到多个cookie。
      • 只需要多创建几个cookie对象,多调用几次response的addCookie方法即可
    2. cookie一般在计算机保存多长时间

      1. 默认情况下,只要关掉浏览器,cookie数据就会被销毁

      2. 如何持久化储存?

        • setMaxAge(int seconds)

          1. 正数:将cookie数据写进硬盘,持久储存,并指定销毁时间seconds。

          2. 负数:默认情况

          3. 零:删除cookie信息

          4. 代码

                    Cookie c1=new Cookie("msg","hello");
            c1.setMaxAge(300);
            response.addCookie(c1);
            //300秒后自动销毁
      3. cookie能否存中文?

        • 在tomcat 8 之前 cookie中不能直接存储中文数据。(需要URL编码)
        • 在tomcat 8 之后,cookie支持中文数据。特殊字符还是不支持,建议使用URL编码存储,URL解码解析
      4. cookie共享问题?

      5. 在同一个服务器中,项目共享cookie

        • 默认情况下,不共享
        • 使用方法setPath(String path):设置cookie的获取范围。默认情况下,设置当前的虚拟目录,如果要共享,则可以将path设置为"/"
      6. 不同的服务器之间的cookie共享?

        • setDomain(String path):如果设置一级域名相同,那么多个服务器之间cookie可以共享

          • setDomain(".baidu.com"),那么tieba.baidu.com和news.baidu.com中cookie可以共享
    3. cookie的特点和作用

      1. cookie存储数据在客户端浏览器
      2. 浏览器对于单个cookie的大小以及同一个域名下总cookie数量也有限制(20个)
      3. 作用:
        1. 由于cookie在客户端数据并不安全,cookie一般用于存储少量不太敏感的数据
        2. 他可以完成一些类似于在没有登陆的情况下,完成服务器队客户端身份的识别

Cookie学习总结的更多相关文章

  1. Cookie学习笔记二:Cookie实例

    今天说说刚刚学到的两个Cookie的最经典应用:自己主动登录和购物车设置 一:自己主动登录 须要两个页面:login.jsp与index.jsp,login.jsp用来输出登录信息,index.jsp ...

  2. cookie学习指南

    一.什么是cookie cookie也叫HTTP cookie,最初是用来客户端和服务器端进行会话用的,由于HTTP是一种无状态的协议,为了维持用户和跟踪用户信息,所以引入了cookie和sessio ...

  3. 关于COOKIE学习的一二

    index.php <?php setcookie("name","dalisng",time()+3600); setcookie("addr ...

  4. cookie学习

    cookie是储存于访问者的计算机中的变量,每当同一台计算机通过浏览器请求某个页面时,就会发送这个cookie,可以使用javascript来创建和取回cookie的值. 创建和存储cookie 首先 ...

  5. 保存会话数据——cookie学习

    Cookie是客户端技术,程序把每个用户的数据以cookie的形式写给用户各自的浏览器.当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去.这样,web资源处理的就是用户各自的数据了 ...

  6. PHP Cookie学习

    <?php /* Cookie在计算机中保存的格式 用户名@网站地址[数字].txt Cookie在文件夹下,每个Cookie文件都是一个简单而又普通的文件件而不是程序,Cookie中的内容大多 ...

  7. 【转载】HTTP Cookie学习笔记

    什么是cookie? cookie是什么?是饼干,小甜点? No! No! No! 我今天要总结的cookie并不是你所想的小甜心,我这里要说的cookie是Web开发中的一个重要的"武器& ...

  8. Session、Cookie 学习笔记

    在开始今天的博文之前首先为自己庆祝一下自己有了三个粉丝,也有了同僚的评论,说实话因为这个开心了好久!哈哈,好了在开始今天的正题之前,首先大家需要了解以下几点: a. HTTP 协议是无状态的协议,WE ...

  9. javaweb之Cookie学习

    Cookie简介 HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分中两次请求是否由一个客户端发出.这样的设计严重阻碍的Web程序的设计.如:在我们进行网购时,买了一条裤子, ...

  10. Cookie学习笔记

    1.简介 1.什么是cookie:cookie是一种能够让网站服务器把少量数据(4kb左右)存储到客户端的硬盘或内存.并且读可以取出来的一种技术. 2.当你浏览某网站时,由web服务器放置于你硬盘上的 ...

随机推荐

  1. 如果在num1的任何位置有一个数字的连续三倍,并且在num2中有一个数字的连续两倍,则返回1。 如果不是这样,则返回0

    ''' 它接受数字num1和num2,如果在num1的任何位置有一个数字的连续三倍,并且在num2中有一个数字的连续两倍,则返回1. 如果不是这样,则返回0 例子 triple_double(4519 ...

  2. webpack 快速入门 系列 - 自定义 wepack 上

    其他章节请看: webpack 快速入门 系列 自定义 wepack 上 通过"初步认识webpack"和"实战一"这 2 篇文章,我们已经学习了 webpac ...

  3. 安卓控件RecycleView的简单使用

    RecycleView的使用 目录 RecycleView的使用 技术概述 技术详述 遇到问题和解决 总结 参考文献 技术概述 RecycleView是谷歌官方对ListView的改进(并不是替代), ...

  4. 无法在源“”处找到包“entityframework”

    当在程序包管理器控制台安装ef时出现这个 出现这种情况可能是程序包源不对 我的是由于之前项目的源有一个内网平台的,把这个取消勾选就能安装成功了 上图设置路径为工具-NuGet包管理器-管理解决方案的N ...

  5. Vue开发项目全流程

    只记录vue项目开发流程,不说明怎样安装node和vue-cli等 确认安装 安装好node之后,可查看是否安装成功,有版本则安装成功.输入node -v 查看vue是否安装成功,有版本则安装成功.输 ...

  6. 玩转STM32MP157- 使用fbtft驱动 lcd st7735r

    什么是fbtft fbtft 在 github 中的介绍是" Linux Framebuffer drivers for small TFT LCD display modules,翻译过来 ...

  7. 渗透测试工具Burpsuite操作教程

    Burpsuite简介 Burp Suite 是一款专业的Web和移动应用程序渗透测试工具,是用于攻击web 应用程序的集成平台,包含了许多工具.Burp Suite为这些工具设计了许多接口,以加快攻 ...

  8. Kubernetes网络的iptables模式和ipvs模式支持ping分析

    1.iptables模式无法ping通原因分析 iptables模式下,无法ping通任何svc,包括clusterip.所有ns下,下面来分析原因: 查看kubernetes的网络模式 curl 1 ...

  9. 14 Nginx访问日志自动按天切割

    #!/bin/bash export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin LOG_DIR=/usr/loc ...

  10. Flex中利用事件机制进行主程序与子窗体间参数传递

    在开发具有子窗体,或者itemrenderer的应用时,常常涉及到子窗体向父窗体传递参数或者从itemrenderer内的控件向外部的主程序传递参数的需求.这些都可以通过事件机制这一统一方法加以解决. ...