21

データをオフラインで保存するために、WebApp は以下を使用できます。

しかし、どうやらファイルストレージはありません。もちろん、マニフェスト ベースのキャッシュもありますが、これは単なるキャッシュであり、ユーザー データ ストレージとして使用することは想定されていません。

WebApp のユーザーは、ある種のクラウド ファイル ストレージを使用することを余儀なくされているということですか?

ユーザーのローカル マシンに大きなファイルを保存する方法はありますか? それとも、Web アプリケーションがユーザー データの保存に使用できるローカル フォルダーを選択する方法はありますか?

編集します。安全。HTML5 にはすでに、データの大部分をユーザーのローカル マシンに書き込む機能があります。ブラウザーが別のファイルベースの抽象化を提供してデータを保存する場合、セキュリティ上の問題は見られません。仮想マシン、仮想ファイルシステムなど、何でもかまいません。

うーん、JSファイルシステムを書いてSQLにブロブとして保存することは可能だと思います...

同様の 質問

更新:うーん...最近 、これこれを見つけました。多分それは私が探しているものです.はい、そうです! 以下の回答を参照してください。

4

7 に答える 7

17

ついに見つけました!答えは次のとおりです。

読み取り/書き込みアクセスの側面を備えたDOMFileSystemを作成します。次のように記述してください

GoogleのEricUhrhaneは 、Webアプリがデータの読み取りと書き込みを行うことができるサンドボックス化されたファイルシステムを作成するための一連のAPIを定義するFile API:DirectoriesandSystem仕様の作業ドラフトに取り組んでいます。

わお!私はとても興奮しています!

于 2010-12-12T14:09:54.753 に答える
6

localStorageユーザーがドキュメントを編集しているときに使用し、ドキュメントをディスクに保存するときに API を使用しないのはなぜFileWriterですか? ほとんどの人は、ドキュメントを保存するときに保存ダイアログがポップアップ表示されることに慣れています。

FileWriterAPIへのユーザーレス アクセスを保証する唯一のシナリオは自動保存機能ですが、自動保存機能localStorageも同様に優れています。

于 2010-12-07T14:45:22.050 に答える
3

Flashを使用する場合は、比較的大きなファイルをユーザーのハードドライブに保存する方法があります。Downloadifyを調べてください:

http://www.bitrepository.com/downloadify-client-side-file-generation.html

Downloadifyを使用すると、SWFにデータを送信し、そのSWFでユーザーのマシンにファイルを作成することができます。リストした方法の1つ、Webstorage、sqliteデータベースなどを使用してデータを保存することをお勧めします。SWFを含むすべてのアセットをマニフェストファイルに入れて、すべてがブラウザーにローカルにキャッシュされるようにします。次に、データベースまたはWebストレージから情報を取得し、SWFを使用して必要なファイルを作成できます。

これらのファイルをWebアプリケーションに読み戻すことができるかどうかはわかりません。

データを保存する別のオプションは、データURIスキームでリンクタグを使用することです。ただし、現時点ですべての主要なブラウザでサポートされているかどうかはわかりません。

于 2010-12-05T04:23:01.407 に答える
1

セキュリティ上の理由から、悪意のある人々によって悪意のある目的で使用された場合に備えて、ユーザーのローカル ファイル システムにファイルを書き込むことはできません。

それは変わる可能性が低く、それは良いことです。

于 2010-10-15T15:15:07.070 に答える
1

HTML5 FileSystem API は Chrome 8 で導入され始め、現在 (Chrome 11) ではかなり完成しています。

ここに素晴らしいチュートリアルがあります: http://www.html5rocks.com/tutorials/file/filesystem/

于 2011-05-18T17:23:53.810 に答える