用于短文本的JavaScript字典编码器

时间:2012-09-11 11:45:29

标签: javascript algorithm encoding dictionary compression

我有以下JSON:

{"test": {"property 1": 345, "property 2": 976, "property 3": "asd"}}

我需要将它压缩得很短,就像那样(在URL中)

/#params=abs54sgdasd1we!ewd

我在JSON上有一个已定义属性的列表,所以这就是为什么我要问什么是JS的最佳字典编码器。稍后我应该能够从该字符串解码回JSON。

1 个答案:

答案 0 :(得分:0)

你可以只HTMLencode整个JSON string。请记住,您需要对象/“关联数组”/“词典”中的key"key": "value",因为排序不是强制性的。否则,345|976|"asd"可能会在没有密钥的情况下以976|"asd"|345结尾并产生意外结果。否则,将其转换为数组/列表,以便维护订单,并且您只依赖于值的顺序。

如果“非常短”是主要要求并且必须在URL中,则将JSON存储在数据库中并基于它生成id或散列(如crc,md5)作为查找键,您可以添加到URL参数。

修改:property123名称可以缩小为abc想切换到数组。

Edit2:如果它将与之交互的应用程序具有cookie识别功能,您可以将数据存储在cookie中,并将哈希值存储在URL中。

并且,如果属性1-3的值有限,您可以将它们映射到固定长度的预定义值。