質問

Base64 でエンコードされたデータに HTML (およびすべてのインライン CSS と Javascript) を含む URL を生成する、HTML ドキュメントをプレビューするための小さな Web アプリを構築しました。問題は、URL がすぐに長くなってしまうことです。「事実上の」標準的な方法は何ですか(できれば JavaScript) データを失わずに最初に文字列を圧縮するにはどうすればよいですか?

PS;少し前に学校でハフマンとレンペル・ジヴについて読んだことがありますが、LZW が本当に楽しかったのを覚えています :)

編集:

解決策が見つかりました。rawStr => utf8Str => lzwStr => Base64Str が良いようです。私はさらに、utf8 と lzw の間でハフマン圧縮を実装することに取り組んでいます。これまでのところの問題は、base64 にエンコードすると文字が多すぎると非常に長くなるということです。

役に立ちましたか?

解決

チェックアウト この答え. 。LZW 圧縮/解凍の関数について言及しています (経由) http://jsolait.net/, 、 具体的には http://jsolait.net/browser/trunk/jsolait/lib/codecs.js).

他のヒント

URL を大幅に圧縮するのは難しいでしょう。URL は短すぎて、ハフマン/LZW スタイルのアルゴリズムから大きなメリットを得るには十分な冗長情報が含まれていません。

可能な URL のスペースに制限がある場合 (例:すべてのコンテンツは同じフォルダーのセットに存在する傾向があります)、クライアント上で展開するために URL の一部をハードコーディングすることもできます。浮気。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top