不同类型的浏览器存储

发布于 2024-09-25 17:13:42 字数 300 浏览 7 评论 0原文

从这张幻灯片 http://slides.html5rocks.com/#slide8 在 Chrome 中:查看 >开发商>开发者工具>存储选项卡中,

我了解到浏览器存储至少有 4 种类型: 数据库、本地存储、会话存储、Cookie (还有更多吗?)

有什么不同?我什么时候应该使用其中一种而不是另一种?

例如,如果一个网站想要存储用户首选项,该网站应该告诉浏览器使用哪种存储方法?

From this slideshow http://slides.html5rocks.com/#slide8
and from Chrome: View > Developer > Developer Tools > Storage tab,

I learned that there are at least 4 types of browser storage:
Databases, Local Storage, Session Storage, Cookies
(are there more?)

What are the differences? When should I use one over the other?

For example, if a site wants to store user preferences, which storage method should the site tell the browser to use?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

别在捏我脸啦 2024-10-02 17:13:42

它们都是浏览器端存储,为网络应用/网站提供离线/缓存机制:

  • 本地存储:简单的键值存储,数据始终存储为字符串。域的所有页面都可以访问相同的数据,并且即使在关闭浏览器后也仍然保留。
  • 会话存储:相同,但对于一个 URL 和一个浏览器会话而言是本地的(在浏览器关闭时删除)。
  • SQL 数据库(又名 WebSQL):可以通过 SQL 请求访问的本地数据库中的存储...似乎已被弃用,因为 IE 和 Firefox 已声明他们不会实现它。

也许您很快还会听说 IndexedDB (现在支持 IE 10、FF 和 Chrome),它是一种本地/会话存储,但您可以使用它来存储 javascript 对象而不仅仅是字符串。

They are all browser-side storage to provide offline/cache mechanisms to web apps/sites:

  • local storage : simple key-value storage, the data is always stored as strings. The same data is accessible to all the pages of the domain and remains persistent even after you closed the browser.
  • session storage : same but is local to one URL and to one browser session (deleted on browser close).
  • SQL database (aka WebSQL): storage in a local DB you can access by SQL requests... seems already deprecated as IE and Firefox have stated they won't implement it.

Maybe you'll also hear soon about IndexedDB (now supported on IE 10, FF, and Chrome) which is a kind of local/sessionStorage but which you can use to store javascripts objects instead of only strings.

秋日私语 2024-10-02 17:13:42

您要问的是关于 Web 存储,它基本上是一个 HTML Web 存储。
本地存储 - 用作易失性存储(没有过期时间)
会话存储 - 直到正在使用会话或打开选项卡
IndexedDb - 一旦使用,您必须手动清除它(历史记录或进入存储)
WebSQL - 旧的但仍然使用相同的 SQL 查询 - 现在它不是 HTML5 规范的一部分。
Cookie - 最常见的是保存少量数据,所有网站都使用它们,现在每个使用它的网站都应该请求用户权限。顺便说一句,这就是 GDPR!

图片来自Chrome 开发者工具

The thing you are asking is about the Web Storage which is basically an HTML Web Storage.
Local Storage- Used as a volatile storage (has no expiry)
Session Storage - Till a session is being used or a tab is open
IndexedDb - Once used, you have to manually clear it (History or going in Storage)
WebSQL - Old but still used the same SQL queries - It's not a part of HTML5 specification now.
Cookies - Are the most common to save small about of data, They are used by all the website and these days they every website using it should ask for user permissions. That's GDPR BTW!

Image from Chrome Developer Tools

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文