Cookies 在cookie中保存一个大的数字数组

Cookies 在cookie中保存一个大的数字数组,cookies,Cookies,我必须在客户端的cookie中保存400个数字。每个数字从1到10。有没有关于如何组织cookie中的数据以使其紧凑的建议?(我将在服务器端使用Python,在客户端使用JavaScript处理cookies。)如何将整数列表写入逗号分隔的列表,然后使用gzip压缩列表(这将产生二进制输出),然后通过base-64编码器从gzip传输二进制输出,这将生成可存储为cookie的文本。我猜结果只有大约100个字节,可以很容易地存储在cookie中。另一个解决方案是使用“localStorage”:

我必须在客户端的cookie中保存400个数字。每个数字从1到10。有没有关于如何组织cookie中的数据以使其紧凑的建议?(我将在服务器端使用Python,在客户端使用JavaScript处理cookies。)

如何将整数列表写入逗号分隔的列表,然后使用gzip压缩列表(这将产生二进制输出),然后通过base-64编码器从gzip传输二进制输出,这将生成可存储为cookie的文本。我猜结果只有大约100个字节,可以很容易地存储在cookie中。

另一个解决方案是使用“localStorage”:

for(i=0; i <400; i++){
     localStorage[i] = Math.floor((Math.random()*10)+1);
}

console.log(localStorage);
alert(JSON.stringify(localStorage));

对于(i=0;i好的,如果您想完全在客户端执行此操作,那么让我们尝试另一种方法。对于要存储的每三个整数(从1到10),将有1000个组合(10*10*10=1000)。12位为您提供1024个组合(2^12=1024)。因此,您可以使用12位存储3个整数(每个1-10)。因此,400个整数(每个1-10)可以使用1600位(400/3*12)存储。通过这种方式存储整数的逻辑可以在客户端使用javascript轻松实现。1600位=200字节(1字节=8位),因此可以存储400个整数(每个1-10)使用200字节。这是二进制数据,因此要将此信息存储在cookie中,必须将其转换为ascii文本。base64编码是一种方法,可以在客户端使用处的函数来完成。base64编码每编码3个字节生成4个字符,因此存储在cookie中的结果字符串长度为267个字符(20*4/3)。整个过程可以通过javascript在客户端以这种方式完成,并包含400个整数(每个1-10)可以存储在一个长267个字符的cookie中。

您能提供更多关于存储的数字的信息吗?您使用的是哪种服务器端语言?如果php看一下:对于html5,您也可以使用localstorageYes,顺序非常重要。我必须花费服务器时间来压缩/解压每个查询。有什么可以合作的吗将字符串转换为Unicode?这种情况会把一切都搞糟。