将原始数据存储在cookies中-好主意还是坏主意?
我想在cookie中存储最近查看的配置文件列表。将原始数据存储在cookies中-好主意还是坏主意?,cookies,client-side-data,Cookies,Client Side Data,我想在cookie中存储最近查看的配置文件列表。 我有一个网站,人们可以在其中输入游戏角色id(魔兽世界),并可以查看角色的个人资料。 字符标识包括名称(unicode,最多15个字符)、服务器名称(unicode,最多25个字符)和区域(2个字符,拉丁语-1)。 我在cookie中最多存储5个最近查看的字符,URL编码值,因为并非所有浏览器都是unicode cookie友好型的 这使得这个cookie有两个500字符长 问题:这是合理的方法吗?这里有几个其他的解决方案,我想让你评估一下 存储
我有一个网站,人们可以在其中输入游戏角色id(魔兽世界),并可以查看角色的个人资料。
字符标识包括名称(unicode,最多15个字符)、服务器名称(unicode,最多25个字符)和区域(2个字符,拉丁语-1)。
我在cookie中最多存储5个最近查看的字符,URL编码值,因为并非所有浏览器都是unicode cookie友好型的 这使得这个cookie有两个500字符长 问题:这是合理的方法吗?这里有几个其他的解决方案,我想让你评估一下
编辑:需要注意的是,“最近使用的字符”列表只是为了方便起见,如果它被清除的话-这根本不是问题(在某些应用程序中它类似于“最近使用的文件”)我个人更喜欢将ID存储在cookie中,并将其余数据存储在数据库中。如果可以在用户会话期间删除数据,请仅为用户会话创建一个新表(使用其会话id),并将该id存储在cookie中。将datetime放入该表中,并定期(如在cron作业中)删除任何超过x天的记录。如果您当前的解决方案没有遇到问题(或限制),我会保持原样。请注意,通过存储整个字符并显示该数据,数据可能已过时
我会将ID存储在cookie中,并执行一些服务器端逻辑来从ID列表中返回可用字符。数据库中不存在的ID可以跳过显示,并再次出现在ID列表中。在这种情况下,数据最不可能过时,因为名称+服务器是字符的原始标识,因此它不会得到更多的标识。