都用来跟踪客户端跟服务器的会话

    条件 session cookie webStorage(包含sessionStorage,localStorage)
    大小 5M(不限制大小) 4k 一般为5M
    有效期 默认失效时间30分钟 窗口存活时间 localStorage永不失效,除非主动删除,sessionStorage只在当下页面生效,关闭页面或者浏览器后被清除
    安全性 安全性大于cookic 不安全(cookie截获、cookie欺骗)
    储存方式 类似HashTable的结构类型 字符串(文本的方式)
    应用场景 1.判断用户是否登录过,以便下次登录能够自动登录(或者记住密码),如果我们删除cookie,每次登录都要填写相关信息,
    2.保存上次的时间,浏览记录,次数
    session用于保存每个用户的专用信息,变量的值保存在服务器端,通过sessionID来区分不同的用户,
    1.网上商城的购物车
    2.保存用户信息
    3.讲某些数据保存在session中,供同一用户跨页面使用
    localStorage用于长期登录,(判断用户是否已经登录过),适合保存一些长期使用的信息
    sessionStorage用于保存一些敏感账号的一次性登录

    一、为什么说session比cookie安全?
    (1)sessionID储存在cookie中,要攻破session首先要攻破cookie
    (2)sessionID是要有人登录或者session_start才会有,所以攻破cookie不一定有sessionID
    (3)启动session_start(),前一次的sessionID失效,session过期后,sessionID失效
    (4)sessionID加密
    二、综上所述短时间攻破session不容易
    浅谈session和cookie的缺点?


    session cookie
    缺点 (1)保存的东西越多,就越占内存,对人数访问较多的服务器造成很大的压力
    (2)依赖cookie,如果用户关闭cookie则要使用URL重写,这样不安全
    (3)创建Session变量有很大的随意性,可随时调用,不需要开发者做精确地处理,所以,过度使用session变量将会导致代码不可读而且不好维护
    (1)大小受到
    (2)用户可以操作,功能受限
    (3)安全性较低,有些东西不能保存在客户端
    (4)每次访问都需要给服务器发送,浪费宽带

    三、session机制
    当服务器收到要创建session先判断是否有sessionID,如果有则返回相应的对象,如果没有会新建一个session对象,并把sessionID在这次响应中返回给客户端,通常使用cookie来储存sessionID
    cookie和session的区别 - 图1
    四、参考阅读
    CSDN:https://blog.csdn.net/xiaozhi_2016/article/details/52416093