| window.runtime プロパティ | window.runtime.flash.net.ServerSocket |
| 継承 | ServerSocket EventDispatcher Object |
| ランタイムバージョン: | 2 |
TCP サーバーはリモートクライアントからの受信接続を待機します。クライアントが接続しようとすると、ServerSocket が connect イベントを送出します。このイベントで送出される ServerSocketConnectEvent オブジェクトはサーバーとクライアント間の TCP 接続を表す Socket オブジェクトを提供します。接続したクライアントとのその後の通信で、この Socket オブジェクトを使用します。必要な場合は、Socket オブジェクトからクライアントアドレスとポートを取得できます。
注意:アプリケーションは、クライアント Socket·オブジェクトへの参照を維持します。維持を行わない場合、このオブジェクトはガベージコレクションの対象となり、警告を表示せずにランタイムによって破棄される可能性があります。
ServerSocket オブジェクトを待機状態にするには、listen() メソッドを呼び出します。待機状態では、TCP プロトコルを使用するクライアントがバインドされたアドレスおよびポートに接続しようとするたびに、サーバーソケットオブジェクトが connect イベントを送出します。ServerSocket オブジェクトは close() メソッドを呼び出すまで追加の接続を待機し続けます。
TCP 接続は永続的であり、接続の一端が閉じられるまで(あるいは重大なネットワークエラーが発生するまで)維持されます。この接続を経由して送信されるデータは、伝送可能なパケットに分割され、接続の終端でもう一度組み立てられます。すべてのパケットは妥当な範囲で到着することが保証され、消失パケットは再送信されません。 通常、TCP プロトコルによる利用可能なネットワーク帯域幅の管理は UDP プロトコルよりも優れています。ソケット通信を必要とするほとんどの AIR アプリケーションは、DatagramSocket クラスではなく ServerSocket および Socket クラスを使用しているはずです。
ServerSocket クラスは Adobe AIR アプリケーションでのみ使用でき、アプリケーションセキュリティサンドボックスでのみ使用できます。
セキュリティについて詳しくは、Flash Player デベロッパーセンターのトピック:セキュリティを参照してください。
さらに例を参照
関連する API エレメント
| プロパティ | 定義元 | ||
|---|---|---|---|
| bound : Boolean [読み取り専用]
ソケットが現在ローカルのアドレスとポートにバインドされているかどうかを示します。 | ServerSocket | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | |
| isSupported : Boolean [静的] [読み取り専用]
ServerSocket 機能がランタイム環境でサポートされているかどうかを示します。 | ServerSocket | ||
| listening : Boolean [読み取り専用]
サーバーソケットが受信接続を待機しているかどうかを示します。 | ServerSocket | ||
| localAddress : String [読み取り専用]
ソケットが待機している IP アドレス。 | ServerSocket | ||
| localPort : int [読み取り専用]
ソケットが待機しているポート。 | ServerSocket | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
| メソッド | 定義元 | ||
|---|---|---|---|
ServerSocket オブジェクトを作成します。 | ServerSocket | ||
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | |
bind(localPort:int = 0, localAddress:String = "0.0.0.0"):void
指定されたローカルのアドレスおよびポートにこのソケットをバインドします。 | ServerSocket | ||
close():void
ソケットを閉じて、接続の待機を停止します。 | ServerSocket | ||
![]() | dispatchEvent(event:Event):Boolean
イベントをイベントフローに送出します。 | EventDispatcher | |
![]() | hasEventListener(type:String):Boolean
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | |
![]() | hasOwnProperty(name:String):Boolean
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() | isPrototypeOf(theClass:Object):Boolean
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
listen(backlog:int = 0):void
バインドされた IP アドレスおよびポートで TCP 接続の待機を開始します。 | ServerSocket | ||
![]() | propertyIsEnumerable(name:String):Boolean
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() | removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | |
![]() | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | |
![]() | toLocaleString():String
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | |
![]() | toString():String
指定されたオブジェクトのストリング表現を返します。 | Object | |
![]() | valueOf():Object
指定されたオブジェクトのプリミティブな値を返します。 | Object | |
![]() | willTrigger(type:String):Boolean
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher | |
| イベント | 概要 | 定義元 | ||
|---|---|---|---|---|
![]() | [ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。 | EventDispatcher | ||
| オペレーティングシステムがこのソケットを閉じたときに送出されます。 | ServerSocket | |||
| リモートソケットがこのサーバーソケットに接続しようとするときに送出されます。 | ServerSocket | |||
![]() | [ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。 | EventDispatcher | ||
bound | プロパティ |
isSupported | プロパティ |
isSupported:Boolean [読み取り専用] | ランタイムバージョン: | 2 |
ServerSocket 機能がランタイム環境でサポートされているかどうかを示します。
listening | プロパティ |
localAddress | プロパティ |
localPort | プロパティ |
ServerSocket | () | コンストラクター |
public function ServerSocket()| ランタイムバージョン: | 2 |
ServerSocket オブジェクトを作成します。
例外
SecurityError — コンテンツの呼び出しが AIR アプリケーションセキュリティサンドボックス外で実行される場合にこのエラーが発生します。
|
bind | () | メソッド |
public function bind(localPort:int = 0, localAddress:String = "0.0.0.0"):void| ランタイムバージョン: | 2 |
指定されたローカルのアドレスおよびポートにこのソケットをバインドします。
パラメーター
localPort:int (default = 0) — ローカルコンピューター上でバインドするポートの数。localPort が 0(デフォルト)に設定されている場合、次に利用可能なシステムポートがバインドされます。1024 より下位のポート番号に接続する権限には、システムのセキュリティポリシーが適用されます。例えば、Mac および Linux システムでは、アプリケーションは 1024 より下位のポートに接続するにはルート権限で実行する必要があります。
| |
localAddress:String (default = "0.0.0.0") — バインド先のローカルマシンの IP アドレス。このアドレスは、IPv4 アドレスでも IPv6 アドレスでもかまいません。localAddress が 0.0.0.0(デフォルト値)に設定されている場合、ソケットは利用可能なすべての IPv4 アドレスを監視します。利用可能なすべての IPv6 アドレスを監視するには、"::" を localAddress 引数として指定する必要があります。IPv6 アドレスを使用するには、コンピューターとネットワークの両方が IPv6 をサポートするように設定されている必要があります。 さらに、IPv4 アドレスにバインドされたソケットは IPv6 アドレスのソケットに接続できません。同様に、IPv6 アドレスにバインドされたソケットは IPv4 アドレスのソケットに接続できません。アドレスの種類が一致している必要があります。
|
例外
RangeError — このエラーは、localPort が 0 未満か、または 65535 より大きい場合に発生します。
| |
ArgumentError — このエラーは、localAddress が構文的に整形式の IP アドレスになっていない場合に発生します。
| |
IOError — ソケットがバインドできないとき。例えば、次のような場合です。
|
close | () | メソッド |
public function close():void| ランタイムバージョン: | 2 |
ソケットを閉じて、接続の待機を停止します。
閉じたソケットを再び開くことはできません。代わりに新しい ServerSocket インスタンスを作成します。
例外
Error — このエラーはソケットを開くことができなかった場合、またはソケットが開いていなかった場合に発生します。
|
listen | () | メソッド |
public function listen(backlog:int = 0):void| ランタイムバージョン: | 2 |
バインドされた IP アドレスおよびポートで TCP 接続の待機を開始します。
listen() メソッドは直ちに戻ります。listen() を呼び出すと、接続が試みられたときに必ず、ServerSocket オブジェクトによって connect イベントが送出されます。ServerSocketConnectEvent イベントオブジェクトの socket プロパティは、サーバークライアント接続を表す Socket オブジェクトを参照します。
backlog パラメーターは connect イベントがアプリケーションで処理されている間にキューで待機する接続の数を指定します。キューがいっぱいの場合、追加の接続は connect イベントが送出されることなく拒否されます。デフォルトの値 0 が指定されると、システムの最大のキューの長さが使用されます。この長さはプラットフォームによって異なり、コンピューター別に設定できます。 指定された値がシステムの最大の長さを超えると、代わりにシステムの最大の長さが使用されます。 実際のバックログ値を検出する手段が提供されていません。(システムの最大値は、ホストコンピューター上の TCP ネットワークサブシステムの SOMAXCONN 設定によって決まります。)
パラメーター
backlog:int (default = 0) — 待機接続のキューの最大の長さです。backlog が 0 の場合、このキューの長さはシステムに最大値に設定されます。
|
例外
IOError — このエラーはソケットが開いていないか、バインドされていない場合に発生します。このエラーは、listen() の呼び出しがその他の理由で失敗したときにも発生します。
| |
RangeError — このエラーは、backlog パラメーターが 0 より小さい場合に発生します。
|
close | イベント |
flash.events.Eventプロパティ Event.type =
flash.events.Event.CLOSE| ランタイムバージョン: | 2 |
オペレーティングシステムがこのソケットを閉じたときに送出されます。
close イベントは、ServerSocket close() メソッドが呼び出されるときに送出されません。アプリケーション内の他のオブジェクトは close イベントに依存し、close() メソッドを呼び出す前に手動でイベントを送出できます。
Event.CLOSE 定数は、type プロパティ(close イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | 接続が閉じられたオブジェクトです。 |
connect | イベント |
flash.events.ServerSocketConnectEventプロパティ ServerSocketConnectEvent.type =
flash.events.ServerSocketConnectEvent.CONNECT| ランタイムバージョン: | 2 |
リモートソケットがこのサーバーソケットに接続しようとするときに送出されます。
type プロパティ(ServerSocketConnectEvent イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | この ServerSocket オブジェクトです。 |
target | この ServerSocket オブジェクトです。 |
socket | 新しい接続を表す Socket オブジェクトです。 |
Tue Oct 25 2011, 05:14 AM -07:00

継承されるパブリックプロパティを隠す
継承プロパティの表示