HTML5中的本地存储,会话存储,Web存储,Web数据库和cookie

时间:2011-03-22 22:23:43

标签: html5 cookies local-storage web-sql session-storage

这些概念之间有什么区别,我应该何时特别使用?此列表是否也包含相同一般概念的不同名称?

  • HTML5本地存储
  • HTML5会话存储
  • HTML5网络存储
  • HTML5网络数据库
  • 缓存

5 个答案:

答案 0 :(得分:42)

HTML5网络存储是新客户端数据存储选项的通用术语。

本地存储是持久的并且作用域限定在域中。目前通常会提到两种口味:

  • 'default':将内容存储在名称/值对中
  • Web SQL(又名Web数据库):使用SQL数据库

会话存储是非持久性的,仅限于当前窗口。

Cookie是旧学校完成上述所有工作的方式。存储每个域的名称/值对。

答案 1 :(得分:3)

我想补充更多信息:
cookie只能存储4k的数据 而localStorage能够存储5mb的数据(取决于浏览器)

网站会在浏览器中保存Cookie,下次浏览器会发送cookie以及服务器端使用的http请求。 Cookie适用于与服务器一起使用。 使用localStorage,您可以存储更多数据,但默认情况下仅限于客户端。

答案 2 :(得分:1)

会话存储:会话存储是在用户执行单个事务的情况下引入的,但可以同时在不同的窗口中执行多个事务。一旦我们关闭窗口,会终止。

本地存储:本地存储特定于域,并且引入跨越多个窗口。没有时间限制,如Cookie的情况,并且可以存储高达5MB的存储,如用户邮箱等....

答案 3 :(得分:0)

AFAIC:

  1. Cookie为每个Cookie 4k,本地存储为每个域5k。
  2. Cookie存在时间限制和存储只是客户端协议和域特定的数据仓。

答案 4 :(得分:-3)

如果您的用户位于欧洲,另一个需要考虑的重要事项是,Cookie在欧洲是非法的。 https://www.sitepoint.com/europe-website-cookie-privacy-law/