2

次の JSON があります。

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

そのように(URLで)非常に短く圧縮する必要があります

/#params=abs54sgdasd1we!ewd

私はその JSON で定義されたプロパティのリストを持っているので、JS に最適な辞書エンコーダーは何かを尋ねています。後で、その文字列からデコードして JSON に戻すことができるはずです。

4

1 に答える 1

0

JSON文字列全体をHTML エンコードするだけです。Object/"Associative array"/"dictionary" のペアが必要であることを忘れないでください。順序付けは必須ではないためです。そうしないと、キーがない状態になり、予期しない結果になる可能性があります。それ以外の場合は、配列/リストに変換して、順序が維持され、値の順序のみに依存するようにします。key"key": "value"345|976|"asd"976|"asd"|345

「非常に短い」ことが主な要件であり、URL に含める必要がある場合は、JSON を DB に保存し、URL に追加できるルックアップ キーとしてそれに基づいて ID またはハッシュ (crc、md5 など) を生成します。パラメーター。

編集:配列に切り替えたくない場合はproperty1、、、2の名前を、、に3減らすことができます。abc

Edit2: 対話するアプリケーションが Cookie に対応している場合、データを Cookie に保存し、ハッシュを URL に保存できます。

また、プロパティ 1 ~ 3 の値が制限されている場合は、それらを固定長の定義済みの値にマップできます。

于 2012-09-11T12:07:08.723 に答える