Adobe Flex 3 ヘルプ

共有オブジェクトについて

共有オブジェクトは、ブラウザの Cookie のように機能します。SharedObject クラスを使用して、ユーザーのローカルマシンにあるハードディスクにデータを格納し、同じセッション中や後のセッション中にそのデータを呼び出すことができます。アプリケーションからアクセスできる SharedObject データは、そのアプリケーション自体が作成したもので、さらに、アプリケーションと同じドメイン内で動作しているものに限られます。データはサーバーに送信されず、他のドメインで動作する別の Adobe® Flex™ アプリケーションからアクセスできませんが、同じドメインで動作するアプリケーションからアクセスできるようにすることは可能です。

共有オブジェクトと Cookie の比較

Cookie と共有オブジェクトは非常によく似ています。ほとんどの Web プログラマは Cookie の機能を理解しているので、Cookie とローカル SharedObject を比較すると役に立つことがあります。

RFC 2109 規格に準拠した Cookie には、一般的に次の特性があります。

  • 有効期限を設定できます。多くの場合、デフォルトではセッションの終了時に期限切れになります。
  • サイト固有の条件により、クライアントから無効にできます。
  • Cookie の数は、合計で 300 個、サイトあたり最大 20 個に制限されています。
  • 通常は、1 個あたり 4 KB 以内のサイズに制限されています。
  • セキュリティ上の脅威と考えられることがあり、場合によってはクライアントで無効にされます。
  • クライアントのブラウザで指定した場所に格納されます。
  • HTTP を通じてクライアントからサーバーに転送されます。

一方、共有オブジェクトには次の特性があります。

  • デフォルトでは、有効期限がありません。
  • デフォルトでは、1 個あたり 100 KB 以内のサイズに制限されています。
  • 単純なデータ型(String、Array、Date など)を格納できます。
  • アプリケーションで指定した場所(ユーザーのホームディレクトリ内)に格納されます。
  • クライアントとサーバー間で転送されることはありません。

SharedObject クラスについて

SharedObject クラスを使用すると、共有オブジェクトを作成および削除できます。また、使用している SharedObject オブジェクトの現在のサイズを検出できます。SharedObject クラスは、次のメソッドで構成されます。

メソッド

内容

clear()

SharedObject オブジェクトのすべてのデータを消去し、その SharedObject ファイルをディスクから削除します。

flush()

SharedObject ファイルをクライアント上のファイルに直ちに書き込みます。

getLocal()

クライアントのドメイン固有のローカル SharedObject オブジェクトへの参照を返します。存在しない場合、このメソッドはクライアント上に新規の共有オブジェクトを作成します。

getSize()

SharedObject ファイルのサイズをバイト単位で返します。デフォルトのサイズ制限は 100KB ですが、クライアントの許可によってはそれより大きい場合もあります。

これらのメソッドに加えて、SharedObject オブジェクトには次のプロパティがあります。

プロパティ

内容

data

読み取り専用プロパティ。共有オブジェクトが格納する属性の集合を表しています。

onStatus

共有オブジェクトのイベントハンドラ。すべての警告、エラー、情報通知に対して呼び出されます。

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート