2010-11-12 75 views
1

将压缩数据存储在cookie中的最佳方式是什么?我想这样做的原因是:将压缩数据存储在cookie中

  1. 我想尽可能多的数据可以存储在1块饼干
  2. 我想表现尽可能快地在数据传输方面
  3. 我不不想它是如此明显的就是我恰好存储,以防止篡改方便
  4. 有很多价值,希望这样做可以很容易地检索的最佳机制

回答

0

你不说什么服务器 - b。您正在使用的技术ut here是一种在ASP.NET中使用C#和7Zip库来压缩Cookie的方法。

+0

我使用Java /春服务器,但我想我正在寻找一个更通用的解决方案......如果有一个好的库也为我处理该解决方案,那就更好了。 – 2010-11-12 22:37:32

2

我在PHP这样做,但你应该很容易找到在java中的base64和gzip功能:

  1. 序列化你的对象
  2. 附加一个哈希,以防止篡改(如的md5sum(连载+秘密) )
  3. 压缩串用gzip
  4. 编码使用Base64结果

要获取原始数据,只是以相反的顺序应用相反的功能。您只说了一个cookie,但可以将内容分割为2个或更多个cookie,最大大小为4k,作为第5步(稍后加入)。在比较结果的大小时,不要忘记考虑序列化的字符串可能包含字符,例如urlencoded为'%7B'和'%3A'的'{'和':',使字符串更长。

有些链接可能是有用的: