美文网首页前端面试题详解让前端飞
【总结】Cookie、session和localStorage、

【总结】Cookie、session和localStorage、

作者: mytac | 来源:发表于2018-04-23 14:39 被阅读76次

    Cookie

    cookie是由服务器发送到浏览器的小量信息,浏览器会将cookie保存下来,下次请求同一网站时会将cookie发送给服务器。

    session

    session是指一个用户与交互进行通信的时间间隔,比如登录到登出的这一过程所需要的时间。具体到web中就是用户浏览某个网站时,从进入网站到关闭浏览器所经过的这段时间。注意!!session是一个时间概念,并非客观存在的东西

    当程序需要为某个客户端的请求创建一个session时,服务器首先检查浏览器中是否包含session标识(称为session id),如果已包含则说明为此客户端创建过session,服务器按照这个session id把session对象检索出来使用;如果不包含则为客户端创建一个session并且生成一个对应的session id,并且在响应中返回给客户端,客户端可以将他保存为cookie格式。

    cookie和session的区别

    --- Cookie session对象
    存储位置 客户端(设置过期时间在硬盘;没设置在内存中) 服务端
    时效性 自定义的过期时间(没设置关闭浏览器则消除) session不活动时超出设置时间失效
    存储类型 字符串 对象
    安全性 明文(可以加密后存放) 放在服务器内存中,安全

    localStorage

    localStoragesessionStorage都属于Web Storage。

    localStorage以键值对的形式存储在浏览器中,永久存储,永不失效,除非手动删除。

    sessionStorage

    sessionStorage 属性允许你访问一个 session Storage 对象。它与 localStorage 相似,不同之处在于 localStorage 里面存储的数据没有过期时间设置,而存储在 sessionStorage 里面的数据在页面会话结束时会被清除。页面会话在浏览器打开期间一直保持,并且重新加载或恢复页面仍会保持原来的页面会话。在新标签或窗口打开一个页面会初始化一个新的会话,这点和 session cookies 的运行方式不同。

    localStorage 和 sessionStorage 的区别

    --- localStorage sessionStorage
    有效期 永久存储,永不失效,除非手动删除 关闭会话窗口失效
    作用域 同源窗口 仅在同一个标签页中

    参考资料

    1. 百度百科
    2. Cookie、session和localStorage、以及sessionStorage之间的区别

    相关文章

      网友评论

      • 幻色尘埃:localstorage貌似放不了大东西,在用的某个框架在做上传时就把文件放进去了,然后几十上百兆的东西就把浏览器卡崩溃了😂
        mytac:@幻色尘埃 可以存用户信息还有离线时保存的数据,比如编辑一半的文章,关闭会话,再打开还原这种。。
        幻色尘埃:@张君卓 那么这尴尬的东西一般该怎么用呢。。。
        mytac:@幻色尘埃 是的:joy: 我查了一下,貌似是每个域名只有5m的存储空间

      本文标题:【总结】Cookie、session和localStorage、

      本文链接:https://www.haomeiwen.com/subject/rscllftx.html