Cookie的最佳实践

sis*_*onb 4 cookies

我一直在考虑将两种方法存储在cookie中.一种方法是对所有数据使用一个cookie并将其存储为JSON字符串.

另一种方法是为每个数据使用不同的cookie.

我在第一种方法中看到的负面影响是,由于cookie中有额外的JSON字符,它会在标题中占用更多空间.此外,我将不得不解析和字符串化JSON,这需要一点处理时间.积极的是只使用了一个cookie.我还缺少其他积极因素吗?

我在第二种方法中看到的负面影响是将使用更多的cookie密钥值对.

我将存储大约15-20个cookie.每个cookie的到期日期都是相同的.

根据我的理解,每个域的最大cookie数量约为4000.我们还没有接近这个数字.

我有什么问题可以忽略吗?哪种方法最好?

编辑 - 这些cookie由JavaScript管理.

Tho*_*zco 7

如果您将任何数据分发给用户(这是cookie所做的事情),您应该对数据进行加密,或者至少对其进行签名.

这是保护数据免受篡改所必需的.

此时,大小考虑因素(由于填充),以及解析JSON(加密将导致更大的开销)的性能开销也是如此.


结论:将您的数据存储为JSON(加密),签名,将其编码为base64,并将其存储在一个cookie中.请记住,饼干的最大尺寸(和它的4K).

参考:在众多其他框架和应用程序中,这就是Rails所做的.