javascript - 是否可以序列化 Javascript 对象变量并存储到 cookie 中?

标签 javascript

是否可以序列化 Javascript 对象变量并存储到 cookie 中?还是有其他方法可以完成同样的事情?

最佳答案

如果这些对象不敏感(即,您不关心您的用户是否修改它们),那么将它们序列化到 cookie 中就可以了,前提是您的对象足够小而不会引起问题。

如果您的 cookie 是敏感的(您需要在一定程度上依赖它们)或者您的结构很大,那么为什么不考虑将这些序列化对象存储在服务器上存储的持久 session 中。然后,您可以将 cookie 用作 key 或 ID,以了解当您的访客返回时要恢复哪个 session 。以这种方式,序列化对象的大小以及它们是否“适合”cookie 不再相关。

如果您对用户修改内容不挑剔,但确实需要足够的空间(尽管可能不适用于所有浏览器),另一种可能性是创建 HTML5“本地数据库”或客户端存储。通过这种方式,您既可以消除对 cookie 大小的担忧,也可以消除您自己的服务器端数据库不断增长的大小。这可能是您希望为每个用户存储大量数据但不确定他们是否会再次回来的网站的最佳选择。对于旧版浏览器,您始终可以使用服务器端存储(见上文)。

这里有一个特别好的 HTML5 本地数据库入门教程:http://blog.darkcrimson.com/2010/05/local-databases/

希望本文对您有所帮助,祝您好运!

关于javascript - 是否可以序列化 Javascript 对象变量并存储到 cookie 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4093058/

相关文章:

javascript - 当我调用 JSON 数组时返回未定义?

javascript - Twitter Bootstrap 在 Modal 中形成丑陋的形式

JavaScript 填充和清除 <input> 文本框

javascript - 如何使用 jQuery 获取 url 参数值并将其传递到 url 中

javascript - 如何在Python应用程序中显示网站

javascript - 基于配置值的 Webpack 条件构建

c# - 将 javascript 对象传递给用 C# 编写的 winrt 组件

JavaScript 函数/方法上下文检查

javascript - 使用 React 过滤列表

javascript - CSS 相对背景在插入 html 代码时不会扩展