2009-11-28 10 views
7

私はそれがローカルファイルシステムではなくネットワークにしかア​​クセスできないと思っていますが、インターネットからは最新のバージョンで誰かが確認できると言った人もいます。それは任意のファイルまたは特定の場所にしか到達できませんか?アクションスクリプトをフラッシュしてローカルファイルシステムを読み書きできますか?

ありがとうございました。 Bin

答えて

8

一般に、WebサーバーのSWF は、クライアントマシンからファイルを読み取ることができません。しかし、ユーザーが選択したファイルをクライアントマシンからサーバーにアップロードすることができます。オペレーティングシステム固有のダイアログボックスが表示され、サーバーにアップロードするファイルを選択するように求められます。したがって、Flashは、ユーザーが明示的に許可しているファイルだけを読み込むことはできません。

Flash Player 10以前では、SWFはアップロードされているファイルの内容に直接アクセスできませんでした。ファイルを選択してサーバーに送信するインターフェイスとして機能していました。コンテンツを取得する唯一の方法は、サーバーからSWFにURLLoaderを使用して返信することでした。

しかしFP10から始まる、FileReferenceクラスがあなたの代わりに、サーバーを通過させることのSWFに直接ファイルを選択しユーザーを、ロードすることができますload()方法があります。

同様のルールがダウンロードに適用されます。ファイルは、許可された場所とユーザーが指定した場所でのみ、ユーザーのマシンに保存できます。 FP10を使用する前に、サーバーからクライアントにファイルをダウンロードすることしかできませんでした。SWFを使用して作成したイメージをクライアントマシンに保存する必要があった場合は、サーバーに送信してからダウンロードを促す必要がありました。 FP10以降、SWFから直接データを書き込むことができます(もちろん、ユーザーの許可を得て)。


これらに加えて、SWFは、ブラウザのクッキーに似ているクライアントマシンでSharedObjectsを保存することができます。共有オブジェクトの格納には、ダイアログボックスやユーザーからのアクセス許可は含まれません。上記にリンクされているlivedocsページから次のものが引用されています。

ローカル共有オブジェクトには、アプリケーションの設計時に考慮する必要があります。 SWFファイルでローカル共有オブジェクトの書き込みが許可されない場合や、ローカル共有オブジェクトに格納されたデータがわからなくても削除されることがあります。 Flash Playerユーザーは、個々のドメインまたはすべてのドメインで使用可能なディスク領域を管理できます。使用可能なディスク容量を減らすと、一部のローカル共有オブジェクトが削除されることがあります。 Flash Playerユーザーには、サードパーティのドメイン(現在のブラウザのアドレスバーにあるドメイン以外のドメイン)がローカル共有オブジェクトの読み取りや書き込みを禁止するプライバシー制御機能もあります。

1

のFlashプレーヤーを使用すると、フラッシュのスクリプトは、あなたのプライベートファイルへのアクセス権を持ってしたくないユーザーとして、ユーザーのローカルファイルを保護sandboxと呼ばれるセキュリティメカニズムを持っています。 1)ユーザが特定のフォルダにアクセスすることを許可します(フラッシュプレーヤーを右クリック - >設定 - >詳細 - >セキュリティ) 2)これらのファイルにアクセスするには2通りの方法があります。ファイルシステムへのアクセスを可能にする実行可能なブリッジでフラッシュプレーヤーをラップするadobe airを使用します。 - これはWebアプリケーションではなく、ユーザーがインストールしたプログラムです。

のFlashを使用して、それは私があなたの答えは長い時間前にある実現

+1

を助けている場合、ユーザーが自分のプログラムにロードファイルをてmanualyできるように役立つかもしれないファイルアップローダーを持っています。ただし、この用語は「sanbox」ではなく、「サンドボックス」です(https://en.wikipedia.org/wiki/Sandbox_(computer_security)を参照)。あなたの質問の「sanbox」からのリンクは死んでいるように見え、一般的なページにリンクしています。この質問は私が今行ったGoogle検索の最初のページにあり、あなたの答えはまだいくつかの有用な情報を追加しています。あなたの答えを改善し、 "サンドボックス"を使用してwkipediaのようなものにリンクするのは良いかもしれません。 – gbulmer

+0

固定、ありがとう! – Eran

関連する問題