zoukankan      html  css  js  c++  java
  • cookie与localstorage和sessionstorage的区别比较

    保存位置:

    三者均保存在浏览器端,且同源的。

    与服务器的关系:

    cookie 数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。

    sessionStorage/localStorage:不会自动把数据发给服务器,仅在本地保存。

    路径(path)概念:

    cookie数据有路径(path)的概念,可以限制cookie只属于某个路径下。

    存储大小限制:

    cookie  数据不能超过4K,因为每次http请求都会携带cookie,因此cookie只适合很小的数据。

    sessionStorage/localStorage 也有存储大小的限制,但比cookie大很多,可以达到5M或者更大。

    数据有效期:

    cookie 在设置的cookie过期时间之前一直有效。

    sessionStorage:仅在当前浏览器窗口关闭前有效。

    localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用于持久数据。

    作用域不同:

    cookie  在所有同源窗口中都是共享的。

    sessionStorage:不在不同的浏览器窗口中共享,即使是同一个页面。

    localStorage:在所有同源窗口中都是共享的。

    sessionStorage和localStorage是html5中web storage的两种存储方式,与cookie相似,区别是它是为了更大的容量存储设计的。cookie大小受到限制,并且每次都请求一个新的页面的时候后cookie都会被发送过去,另外cookie还需要制定作用域,不可以跨域调用。

    cookie的作用是与服务器进行交互,作为HTTP规范的一部分存在,而web storage是为了本地存储数据而生。有了本地数据,就可以避免数据在浏览器和服务器之间不必要的来回传递。

    同源的判定:

    http://www.test.com

    https://www.test.com (不同源,协议不同)

    http://my.test.com (不同源,主机名不同)

    http://www.test.com:8080 (不同源,端口不同)

  • 相关阅读:
    LeetCode-49. Group Anagrams
    LeetCode-242.Valid Anagram
    LeetCode-239.Sliding Window Maximum
    LeetCode-703. Kth Largest Element in a Stream
    LeetCode-225.Implement Stack using Queues
    LeetCode-232.Implement Queue using Stacks
    LeetCode-25. Reverse Nodes in k-Group
    LeetCode-142.Linked List Cycle II
    LeetCode-141. Linked List Cycle
    LeetCode-24.Swap Nodes in Pairs
  • 原文地址:https://www.cnblogs.com/lionisnotkitty/p/5995673.html
Copyright © 2011-2022 走看看