Javascript JSON cookie数据的编码?

Javascript JSON cookie数据的编码?,javascript,json,cookies,encoding,Javascript,Json,Cookies,Encoding,在cookie中保存时,您真的需要对JSON.stringify进行编码吗? 我对它进行了测试,IE8+和chrome在不编码(encodeURIComponent)实际数据的情况下运行良好。编码的问题是您被限制为4096字节,JSON中的许多项将被编码,从而导致字节大小更大的增加 我会像这样保存变量,似乎并不是真的需要编码。 (仅345字节) 当我取出饼干时,所有的东西都被保留了下来。我知道编码是最好的做法,但是保存字节和保持cookie干净会更好 编码看起来是这样的(545字节),由于编码,

在cookie中保存时,您真的需要对JSON.stringify进行编码吗?

我对它进行了测试,IE8+和chrome在不编码(encodeURIComponent)实际数据的情况下运行良好。编码的问题是您被限制为4096字节,JSON中的许多项将被编码,从而导致字节大小更大的增加

我会像这样保存变量,似乎并不是真的需要编码。 (仅345字节)

当我取出饼干时,所有的东西都被保留了下来。我知道编码是最好的做法,但是保存字节和保持cookie干净会更好

编码看起来是这样的(545字节),由于编码,大约增加了200字节

 %7B%22s%22%3A%7B%22p%22%3A%221%22%2C%22c%22%3A%22nameofsomething%22%2C%22i%22%3A%2256456%2C54115%2C878451%2C651451%2C65156%2C878941%2C5165165%2C54545%2C22115%2C874845%22%2C%22t%22%3A%221407515818100%22%2C%22gcid%22%3A%22CPOa-ZTbpL4CFWdo7AodTnQA3A%22%2C%22k%22%3A%2254154154%22%7D%2C%22o%22%3A%7B%7D%7D

您在这里询问的是两件不同的事情:

JSON编码

如果您试图存储简单数据,那么不需要JSON编码。您可以毫不费力地将
对手动存储在cookie中。饼干在这方面很在行

另一方面,如果您有一个类似于示例的复杂对象,那么JSON编码是最好的方法。如果不使用JSON编码,您将需要其他方法来处理
键/值
编码,当您最终处理测试对象时,您将创建一个糟糕的JSON版本。因此,使用JSON并避免麻烦

encodeURIComponent

不需要。cookie不是URI,也不是URI组件

其他

JSON编码将处理任何需要完成的unicode编码


一开始我就很难想象需要进行JSON无法处理的任何编码。

我认为没有必要像URL那样进行编码。谢谢。这是有道理的。只是想确定一下。当你说JSON编码时,你的意思是将js对象转换成JSON.stringify?为了使用更正确的措辞,
JSON.stringify
将对象编码成
JSON
,或者JSON编码。但是,是的,你理解正确。
 %7B%22s%22%3A%7B%22p%22%3A%221%22%2C%22c%22%3A%22nameofsomething%22%2C%22i%22%3A%2256456%2C54115%2C878451%2C651451%2C65156%2C878941%2C5165165%2C54545%2C22115%2C874845%22%2C%22t%22%3A%221407515818100%22%2C%22gcid%22%3A%22CPOa-ZTbpL4CFWdo7AodTnQA3A%22%2C%22k%22%3A%2254154154%22%7D%2C%22o%22%3A%7B%7D%7D