11

LZ4 解凍を純粋な JavaScript でクライアント側で機能させようとしています。

このJavaScript ライブラリを見つけましたが、Node.js で使用するためのものです。同じリポジトリ内で、理論的にはブラウザで使用できるライブラリを見つけました。問題は、そのようなライブラリが、Node.js を使用しておらず、これはすべてクライアント側で発生しているため、私が持っていない Node.js バッファをまだ期待していることです (バグをログに記録していくつかを取得しようとしました)。使い方の参考に。)

次に、Node.js バッファーの移植を探したところ、このリポジトリが見つかりました。問題は、それを使用すると、Chrome と Firefox の両方でこのエラーが発生することです。

TypeError: this is not a typed array

このバグレポートを記録しました。これらの 2 つのライブラリを組み合わせて、純粋な JavaScript で lz4 解凍を達成することはそれほど遠くありませんが、これまで ArrayBuffer、Uint8Array、および Node.js を使用したことがないため、点をつなぐのに苦労しています。

私の質問:純粋な JavaScript で LZ4 の解凍に成功した人はいますか? アドバイスや指針はありますか?前もって感謝します。

4

1 に答える 1

7

ソリューションではなくアイデアを提供します。このリポジトリを試すことができます

https://code.google.com/p/lz4/

それはLZ4の純粋なc実装を持っています

あなたはllvmビットコードにclangでそれをコンパイルすることができます

それがある場合は、これを使用します https://github.com/kripken/emscripten

llvm ビットコードから JavaScript を取得するには

cからjavascriptへのコンパイルのようなもので、おかしく聞こえるかもしれませんが、彼らがすでに達成したことを見ると...実際に機能するかどうかはわかりません。

こちらをご覧ください。たとえば、このツールを使用して、多くのものを JavaScript に移植しました: https://github.com/kripken/lzma.js

于 2013-12-17T19:10:37.410 に答える