• session和cookie的区别


    转自:https://segmentfault.com/a/1190000013130309

    • 从存储方式上比较

      • Cookie只能存储字符串,如果要存储非ASCII字符串还要对其编码。
      • Session可以存储任何类型的数据,可以把Session看成是一个容器
    • 从隐私安全上比较

      • Cookie存储在浏览器中,对客户端是可见的。信息容易泄露出去。如果使用Cookie,最好将Cookie加密
      • Session存储在服务器上,对客户端是透明的。不存在敏感信息泄露问题。
    • 从有效期上比较

      • Cookie保存在硬盘中,只需要设置maxAge属性为比较大的正整数,即使关闭浏览器,Cookie还是存在的
      • Session的保存在服务器中,设置maxInactiveInterval属性值来确定Session的有效期。并且Session依赖于名为JSESSIONID的Cookie,该Cookie默认的maxAge属性为-1。如果关闭了浏览器,该Session虽然没有从服务器中消亡,但也就失效了。
    • 从对服务器的负担比较

      • Session是保存在服务器的,每个用户都会产生一个Session,如果是并发访问的用户非常多,是不能使用Session的,Session会消耗大量的内存。
      • Cookie是保存在客户端的。不占用服务器的资源。像baidu、Sina这样的大型网站,一般都是使用Cookie来进行会话跟踪。
    • 从浏览器的支持上比较

      • 如果浏览器禁用了Cookie,那么Cookie是无用的了!
      • 如果浏览器禁用了Cookie,Session可以通过URL地址重写来进行会话跟踪。
    • 从跨域名上比较

      • Cookie可以设置domain属性来实现跨域名
      • Session只在当前的域名内有效,不可跨域名
  • 相关阅读:
    AVLTree的实现以及左右旋转维持自平衡
    哈希函数之布隆过滤器
    LeetCode——线段树解决区间总和问题
    第23章 Windows身份验证
    第22章 使用外部身份提供商登录
    第21章 登录
    第20章 定义客户端
    第19章 定义资源
    第18章 启动
    第17章 社区快速入门和模板
  • 原文地址:https://www.cnblogs.com/applezxy/p/11196367.html
Copyright © 2020-2023  润新知