2

嗨,我是 Java Script 的新手,有一个场景我想在 javascript cookie 上存储一些数据。

问题是 javascript cookie 只能存储 4 KB 的数据。寻找替代品时,我发现了 jStorage 和 local-storage,但并非所有浏览器都支持这些。是否有相同的解决方法。

if ($.cookie('test_data') == null ){
     test_data.push({
      qid: qid, 
      answer:  answer
      });
$.cookie("test_data",JSON.stringify(test_data) , {  expires: expires,   path: '/' });
  }
  else{
    test_data = JSON.parse($.cookie("test_data"));
    test_data = $.grep(test_data, function(e){ return e.qid != qid;   });
    test_data.push({
    qid: qid, 
    answer:  answer
    });
    $.cookie("test_data", JSON.stringify(test_data), {  expires: expires, path: '/' });
  }

这是我正在使用的示例代码。

这里的问题是,如果我的答案比 cookie 存储失败。我必须存储相同的答案组。

任何帮助表示赞赏。

我看到的一些参考链接:相关链接

4

2 回答 2

3

Cookie 不能用于存储大量数据,因为它们会随每个请求一起传输到服务器。

那么问题来了:你真的需要cookie吗?还是只是在本地存储一些数据?

如果稍后再检查所有现代浏览器中可用的localStorage 。

于 2015-09-25T04:07:52.573 回答
1

我“认为”你应该在数据库中创建表来存储“数据”

表“COOKIES_DATA”:[ data_id , data , data_create , date_expire ]

并且 cookie 仅将 data_id 存储在表中。

用户访问时,可以通过cookies中的data_id获取数据库中的数据

于 2015-09-25T04:09:28.217 回答