| パッケージ | flash.net |
| public class XMLSocket | |
| 継承 | XMLSocket EventDispatcher Object |
XMLSocket.connect() メソッドが接続できる TCP ポートの番号は、1024 以上です。この制限により、XMLSocket オブジェクトと通信するサーバーデーモンにも、1024 以上のポート番号を割り当てる必要があります。1024 未満のポート番号は、FTP、Telnet、HTTP などのシステムサービスによって使用されることが多いため、XMLSocket オブジェクトはセキュリティ上の理由からこれらのポートにアクセスできません。こうしたリソースが不適切な方法でアクセスされたり悪用されたりする可能性を小さくするために、ポート番号が制限されています。
XMLSocket オブジェクトと通信できるようにサーバーを設定することは、場合によっては困難が伴います。リアルタイムのインタラクティブ機能を必要としないアプリケーションでは、XMLSocket クラスではなく URLLoader クラスを使用してください。XMLSocket クラスのメソッドを使用するには、まず new XMLSocket コンストラクタを使用して XMLSocket オブジェクトを作成する必要があります。
このクラスを使用するときは、Flash Player セキュリティモデルを考慮してください。
詳細については、次の参照先を参照してください。
関連項目
| プロパティ | 定義 | ||
|---|---|---|---|
| connected : Boolean
[read-only]
この XMLSocket オブジェクトが現在、接続されているかどうかを示します。
| XMLSocket | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
| Object | |
![]() | prototype : Object
[static]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
| Object | |
| メソッド | 定義 | ||
|---|---|---|---|
|
新しい XMLSocket オブジェクトを作成します。
| XMLSocket | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録します。
| EventDispatcher | |
|
XMLSocket オブジェクトで指定された接続を閉じます。
| XMLSocket | ||
|
指定された TCP ポートを使用して指定されたインターネットホストへの接続を確立します。
| XMLSocket | ||
![]() |
イベントをイベントフローに送出します。
| EventDispatcher | |
![]() |
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
| EventDispatcher | |
![]() |
指定されたプロパティがオブジェクトに定義されているかどうかを示します。
| Object | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
| Object | |
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。
| Object | |
![]() |
EventDispatcher オブジェクトからリスナーを削除します。
| EventDispatcher | |
object パラメータで指定された XML オブジェクトまたはデータをストリングに変換し、その後ろにゼロ (0) バイトを付加してサーバーに転送します。 | XMLSocket | ||
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。
| Object | |
![]() |
指定されたオブジェクトのストリング表現を返します。
| Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。
| Object | |
![]() |
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
| EventDispatcher | |
| イベント | 一覧 | 定義 | ||
|---|---|---|---|---|
![]() | Flash Player がオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。 | EventDispatcher | ||
| サーバーによりソケット接続が閉じられたときに送出されます。 | XMLSocket | |||
XMLSocket.connect() メソッドの呼び出しが成功した後に送出されます。 | XMLSocket | |||
| 未処理のデータが送受信された後に送出されます。 | XMLSocket | |||
![]() | Flash Player がオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。 | EventDispatcher | ||
| 入出力エラーが発生して送信または受信操作が失敗したときに送出されます。 | XMLSocket | |||
XMLSocket.connect() メソッドの呼び出しによって、呼び出し元のセキュリティサンドボックスの外にあるサーバーや 1024 未満のポート番号に対して接続しようとしたときに送出されます。 | XMLSocket | |||
| connected | プロパティ |
connected:Boolean [read-only]
この XMLSocket オブジェクトが現在、接続されているかどうかを示します。connect イベントと ioError イベントに対して登録を行い、接続が成功したかどうかを調べることもできます。
public function get connected():Boolean
関連項目
| XMLSocket | () | コンストラクタ |
public 関数 XMLSocket(host:String = null, port:int = 0)
新しい XMLSocket オブジェクトを作成します。初期状態では、XMLSocket オブジェクトはサーバーに接続されません。オブジェクトをサーバーに接続するには、XMLSocket.connect() メソッドを呼び出す必要があります。
host:String (default = null) — FQDN (完全修飾ドメイン名)、つまり aaa.bbb.ccc.ddd という形式の IP アドレスです。null を指定して、SWF ファイルが存在するホストサーバーに接続することもできます。呼び出し元の SWF ファイルが Web ブラウザ内で実行されている場合は、host が SWF ファイルと同じドメイン内に存在する必要があります。
|
|
port:int (default = 0) — 接続の確立に使用するホスト上の TCP ポート番号です。ポリシーファイルを使用している場合を除き、ポート番号は 1024 以上である必要があります。
|
関連項目
| close | () | メソッド |
public function close():void
XMLSocket オブジェクトで指定された接続を閉じます。close イベントは、サーバーにより接続が閉じられたときのみ送出されます。close() メソッドを呼び出しても送出されません。
関連項目
| connect | () | メソッド |
public function connect(host:String, port:int):void指定された TCP ポートを使用して指定されたインターネットホストへの接続を確立します。デフォルトでは、ポリシーファイルを使用していない限り、番号が 1024 以上のポートにのみ接続できます。
host パラメータに対して null を指定した場合は、XMLSocket.connect() を呼び出す SWF ファイルが存在するホストに接続します。たとえば、www.adobe.com から SWF ファイルをダウンロードし、host パラメータに null を指定した場合は、www.adobe.com の IP アドレスを入力した場合と同じ結果となります。
Flash Player 7 より前のバージョンの Player で SWF ファイルを実行している場合、host は、呼び出し元の SWF ファイルと同じスーパードメインに属している必要があります。たとえば、www.adobe.com に置かれた SWF ファイルからは、store.adobe.com にある SWF ファイルに対して変数の送受信を行えます。これは、どちらのファイルも adobe.com という同一のスーパードメインに属するためです。
Flash Player 7 以降で SWF ファイルを実行している場合、host は正確に同じドメインに置かれている必要があります。たとえば、www.adobe.com にある SWF ファイルが Flash Player 5 用にパブリッシュされているにもかかわらず、Flash Player 7 以降で実行されている場合は、このファイルは同様に www.adobe.com に置かれている SWF ファイルに対してのみ、変数の送受信を行えます。別のドメインに対して変数の送受信を行うには、アクセスする SWF ファイルをホストするサーバー上に、クロスドメインポリシーファイルを配置します。
デフォルトでは、host に渡す値は同じドメインに置かれている必要があり、port に渡す値は 1024 以上である必要があります。たとえば、www.adobe.com に置かれている SWF ファイルは、www.adobe.com に存在する SWF ファイルからしか変数を送受信できません。接続している SWF ファイルが置かれているホストとは異なるホスト上にあるソケットに接続する場合、または任意のホストでポート番号が 1024 より小さいポートに接続する場合は、接続するホストから xmlsocket: ポリシーファイルを取得する必要があります。
SWF コンテンツを含む HTML ページの object タグおよび embed タグの allowNetworking パラメータを設定することで、SWF ファイルがこのメソッドを使用しないようにできます。
詳細については、次の参照先を参照してください。
host:String — FQDN (完全修飾ドメイン名)、つまり aaa.bbb.ccc.ddd という形式の IP アドレスです。null を指定して、SWF ファイルが存在するホストサーバーに接続することもできます。呼び出し元の SWF ファイルが Web ブラウザ内で実行されている場合は、host が SWF ファイルと同じドメイン内に存在する必要があります。
|
|
port:int — 接続の確立に使用するホスト上の TCP ポート番号です。ポリシーファイルを使用している場合を除き、ポート番号は 1024 以上である必要があります。
|
securityError:SecurityErrorEvent — 呼び出し元のセキュリティサンドボックス外のサーバーまたは 1024 より小さいポートに接続しようとした接続操作です。どちらの問題も、サーバーで XMLSocket ポリシーファイルを使用することで回避できます。 |
|
data:DataEvent — 未処理のデータを受信したときに送出されます。 |
|
connect:Event — ネットワーク接続が確立されたときに送出されます。 |
SecurityError — 信頼されていないローカル SWF はインターネットへの接続を許可されません。これは、ネットワークアクセスを許可されたローカル SWF ファイル、または信頼できる SWF ファイルとして再分類すると回避できる場合があります。
|
|
SecurityError — 65535 より大きいソケットポートを指定することはできません。
|
関連項目
| send | () | メソッド |
public function send(object:*):void
object パラメータで指定された XML オブジェクトまたはデータをストリングに変換し、その後ろにゼロ (0) バイトを付加してサーバーに転送します。object が XML オブジェクトである場合、ストリングは XML オブジェクトの XML テキスト表現です。送信操作は非同期です。つまり、転送処理はただちに終了しますが、データが転送されるのは、その後です。XMLSocket.send() メソッドは、データが正常に転送されたかどうかを示す値を返しません。
XMLSocket.connect() を使用して、XMLSocket オブジェクトをサーバーに接続していない場合、XMLSocket.send() 操作は失敗します。
object:* — サーバーに転送する XML オブジェクトまたは他のデータです。
|
IOError — XMLSocket オブジェクトはサーバーに接続されません。
|
関連項目
| close | event |
flash.events.Event
flash.events.Event.CLOSE
サーバーによりソケット接続が閉じられたときに送出されます。close イベントは、サーバーにより接続が閉じられたときのみ送出されます。XMLSocket.close() メソッドを呼び出しても送出されません。
close イベントオブジェクトの type プロパティの値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | 接続が閉じられたオブジェクトです。 |
| connect | event |
flash.events.Event
flash.events.Event.CONNECT
XMLSocket.connect() メソッドの呼び出しが成功した後に送出されます。
connect イベントオブジェクトの type プロパティの値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | ネットワーク接続を確立した Socket オブジェクトまたは XMLSocket オブジェクトです。 |
| data | event |
flash.events.DataEvent
flash.events.DataEvent.DATA
未処理のデータが送受信された後に送出されます。
data イベントオブジェクトの type プロパティの値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
data | Flash Player にロードされる未処理のデータです。 |
target | データを受け取る XMLSocket オブジェクトです。 |
| ioError | event |
flash.events.IOErrorEvent
flash.events.IOErrorEvent.IO_ERROR
入出力エラーが発生して送信または受信操作が失敗したときに送出されます。
ioError イベントオブジェクトの type プロパティの値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | 入出力エラーが発生したネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
| securityError | event |
flash.events.SecurityErrorEvent
flash.events.SecurityErrorEvent.SECURITY_ERROR
XMLSocket.connect() メソッドの呼び出しによって、呼び出し元のセキュリティサンドボックスの外にあるサーバーや 1024 未満のポート番号に対して接続しようとしたときに送出されます。
SecurityErrorEvent.SECURITY_ERROR 定数は、securityError イベントオブジェクトの type プロパティ値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | セキュリティエラーを報告するネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
関連項目