パッケージflash.net
クラスpublic class Socket
継承Socket Inheritance EventDispatcher Inheritance Object
実装 IDataInput, IDataOutput

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

Socket クラスを使用すると、コードでソケット接続を確立して生のバイナリデータを読み書きできます。これは XMLSocket に似ていますが、送受信するデータの形式に制約がありません。

Socket クラスは、バイナリプロトコルを使用するサーバーとの通信に役立ちます。

Socket クラスのメソッドを使用するには、まず new Socket コンストラクタを使用して Socket オブジェクトを作成する必要があります。

ローカルファイルシステムのサンドボックス内の SWF ファイルはソケットを使用できません。

ターゲットホスト上のソケットポリシーファイルで、SWF ファイルがソケット接続できるホストと、その接続ができるポートを指定します。Flash Player の最近のリリースでは、ソケットポリシーファイルに関するセキュリティ要件が以前より厳密になっています。Flash Player のすべてのバージョンで、ソケットポリシーファイルを使用することをお勧めします。環境によっては、ソケットポリシーファイルの使用が必須となっています。このため、XMLSocket オブジェクトを使用している場合は、必要に応じてターゲットホストがソケットポリシーファイルを提供するようにしてください。

次の一覧は、Flash Player の各バージョンにおけるソケットポリシーファイルの要件をまとめたものです。

ただし、Adobe AIR では、application セキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。

セキュリティ情報について詳しくは、以下を参照してください。

例を表示

関連項目

Socket connections


パブリックプロパティ
 プロパティ定義元
  bytesAvailable : uint
[読み取り専用] 入力バッファで読み取ることができるデータのバイト数です。
Socket
  connected : Boolean
[読み取り専用] この Socket オブジェクトが現在、接続されているかどうかを示します。
Socket
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  endian : String
データのバイト順序を示します。指定できる値は flash.utils.Endian クラスの定数で、Endian.BIG_ENDIAN または Endian.LITTLE_ENDIAN です。
Socket
  objectEncoding : uint
オブジェクトの書き込みまたは読み取り時に使用される AMF のバージョンを制御します。
Socket
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  timeout : uint
接続までの待ち時間(ミリ秒数)を示します。
Socket
パブリックメソッド
 メソッド定義元
  
Socket(host:String = null, port:int = 0)
Socket オブジェクトを新規作成します。
Socket
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
  
ソケットを閉じます。
Socket
  
connect(host:String, port:int):void
指定されたホストおよびポートにソケットを接続します。
Socket
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
  
ソケットの出力バッファに蓄積されたデータをフラッシュします。
Socket
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
  
ソケットからブール値を読み取ります。
Socket
  
ソケットから符号付きバイトを読み取ります。
Socket
  
readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
ソケットから、length パラメータで指定したデータバイト数を読み取ります。
Socket
  
ソケットから IEEE 754 倍精度浮動小数点数を読み取ります。
Socket
  
ソケットから IEEE 754 単精度浮動小数点数を読み取ります。
Socket
  
ソケットから符号付き 32 ビット整数を読み取ります。
Socket
  
readMultiByte(length:uint, charSet:String):String
指定した文字セットを使用して、バイトストリームからマルチバイトストリングを読み取ります。
Socket
  
ソケットから AMF 直列化形式でエンコードされたオブジェクトを読み取ります。
Socket
  
ソケットから符号付き 16 ビット整数を読み取ります。
Socket
  
ソケットから符号なしバイトを読み取ります。
Socket
  
ソケットから符号なし 32 ビット整数を読み取ります。
Socket
  
ソケットから符号なし 16 ビット整数を読み取ります。
Socket
  
ソケットから UTF-8 ストリングを読み取ります。
Socket
  
ソケットから length パラメータで指定した UTF-8 バイト数を読み取り、ストリングを返します。
Socket
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
  
ソケットにブール値を書き込みます。
Socket
  
ソケットに 1 バイトを書き込みます。
Socket
  
writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
指定したバイト配列のバイトのシーケンスを書き込みます。
Socket
  
ソケットに IEEE 754 倍精度浮動小数点数を書き込みます。
Socket
  
ソケットに IEEE 754 単精度浮動小数点数を書き込みます。
Socket
  
ソケットに 32 ビット符号付き整数を書き込みます。
Socket
  
指定した文字セットを使用して、バイトストリームからマルチバイトストリングを書き込みます。
Socket
  
ソケットに AMF 直列化形式でオブジェクトを書き込みます。
Socket
  
ソケットに 16 ビット整数を書き込みます。
Socket
  
ソケットに 32 ビット符号なし整数を書き込みます。
Socket
  
指定された UTF-8 ストリングの長さ (バイト単位) を示す 16 ビット符号なし整数をソケットに書き込み、その後にストリング自体を書き込みます。
Socket
  
ソケットに UTF-8 ストリングを書き込みます。
Socket
イベント
 イベント 概要 定義元
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
  サーバーによりソケット接続が閉じられたときに送出されます。Socket
  ネットワーク接続が確立されたときに送出されます。Socket
 Inherited[ブロードキャスト イベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
  入出力エラーが発生して送信またはロード操作が失敗したときに送出されます。Socket
  Socket.connect() の呼び出しによって、呼び出し元のセキュリティサンドボックスの外にあるサーバーや 1024 未満のポート番号に対して接続しようとしたときに送出されます。Socket
  ソケットがデータを受信したときに送出されます。Socket
プロパティの詳細
bytesAvailableプロパティ
bytesAvailable:uint  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

入力バッファで読み取ることができるデータのバイト数です。

コードでは、bytesAvailable にアクセスして入力バッファの空き容量を確認してから、read メソッドの 1 つを使用してデータを読み取る必要があります。



実装
    public function get bytesAvailable():uint
connectedプロパティ 
connected:Boolean  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

この Socket オブジェクトが現在、接続されているかどうかを示します。このプロパティの呼び出しは、現在ソケットが接続されている場合に値 true を、それ以外の場合は false を返します。



実装
    public function get connected():Boolean
endianプロパティ 
endian:String

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

データのバイト順序を示します。指定できる値は flash.utils.Endian クラスの定数で、Endian.BIG_ENDIAN または Endian.LITTLE_ENDIAN です。

デフォルト値 : Endian.BIG_ENDIAN.



実装
    public function get endian():String
    public function set endian(value:String):void

関連項目

objectEncodingプロパティ 
objectEncoding:uint

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

オブジェクトの書き込みまたは読み取り時に使用される AMF のバージョンを制御します。



実装
    public function get objectEncoding():uint
    public function set objectEncoding(value:uint):void

関連項目

timeoutプロパティ 
timeout:uint

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

接続までの待ち時間(ミリ秒数)を示します。

指定した時間内に接続できなかったときは、接続が失敗することになります。デフォルト値は 20,000 (20 秒) です。



実装
    public function get timeout():uint
    public function set timeout(value:uint):void
コンストラクタの詳細
Socket()コンストラクタ
public function Socket(host:String = null, port:int = 0)

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

Socket オブジェクトを新規作成します。パラメータを指定しないと、初期状態では未接続のソケットが作成されます。パラメータを指定すると、指定したホストおよびポートへの接続が試行されます。

注意:パラメータを指定せずにコンストラクタフォームを使用し、さらにいずれかのイベントリスナーを追加し、connect メソッドを呼び出す(host および port パラメータを指定する)ことを強く推奨します。このシーケンスによって、すべてのイベントリスナーが正しく動作するようになります。

パラメータ
host:String (default = null) — FQDN(完全修飾ドメイン名)、つまり 111.222.333.444 という形式の IP アドレスです。Flash Player 9.0.115.0 および AIR 1.0 以降では、rtmp://[2001:db8:ccc3:ffff:0:444d:555e:666f] などの IPv6 アドレスを指定できます。null を指定して、SWF ファイルが存在するホストサーバーに接続することもできます。呼び出し元の SWF ファイルが Web ブラウザ内で実行されている場合は、host が SWF ファイルと同じドメイン内に存在する必要があります。
 
port:int (default = 0) — 接続の確立に使用するターゲットホスト上の TCP ポート番号です。Flash Player 9.0.124.0 以降のバージョンでは、ターゲットホストは、SWF ファイルを提供するホストから指定のポートへのソケット接続を許可するように指定した、ソケットポリシーファイルを提供する必要があります。以前のバージョンの Flash Player では、1024 番未満のポートに接続するか、SWF ファイルを提供しているホスト以外のホストに接続するときのみ、ソケットポリシーファイルが必要です。

イベント
connect:Event — ネットワーク接続が確立されたときに送出されます。
 
ioError:IOErrorEvent — 入出力エラーが発生して接続が失敗すると送信されます。
 
securityError:SecurityErrorEventこのエラーは SWF コンテンツで発生します。 Socket.connect() の呼び出しによって、ソケットポリシーファイルを提供しないサーバーや、特定のポートに対して呼び出し元のホストアクセスを許可しないポリシーファイルを持つサーバーに接続しようとしたときに送出されます。ソケットポリシーファイルの詳細については、『ActionScript 3.0 のプログラミング』の「Flash Player セキュリティ」の章を参照してください。

例外
SecurityError — このエラーは、SWF コンテンツ内で次の理由で発生します。
  • Local-with-filesystem ファイルはインターネットと通信できません。この問題は、この SWF ファイルを local-with-networking または trusted として分類し直すことで回避できます。 この制限は、アプリケーションセキュリティサンドボックス内の AIR アプリケーションコンテンツには適用されません。
  • 65535 より大きいソケットポートを指定することはできません。
メソッドの詳細
close()メソッド
public function close():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットを閉じます。close() メソッドが呼び出された後は、データの読み書きはできません。

close イベントは、サーバーにより接続が閉じられたときのみ送出されます。close() メソッドを呼び出しても送出されません。

Socket オブジェクトで connect() メソッドをもう一度呼び出すことで、その Socket オブジェクトを再使用できます。


例外
IOError — ソケットを閉じることができないか、またはソケットが開いていません。.
connect()メソッド 
public function connect(host:String, port:int):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

指定されたホストおよびポートにソケットを接続します。直後に接続が失敗した場合、イベントが送出されるか例外がスローされます。ホストが指定されている場合はエラーイベントが送出され、ホストが指定されていない場合は例外がスローされます。接続が成功した場合は、接続のステータスがイベントにより報告されます。ソケットが既に接続済みの場合、最初に既存の接続が閉じられます。

パラメータ

host:String — 接続するホストのホスト名または IP アドレスです。ホストを指定しないと、接続するホストは、呼び出す ファイルが存在するホストになります。ホストを指定しない場合は、イベントリスナーを使用して接続が成功したかどうかを判定します。
 
port:int — 接続先のポート番号です。


イベント
connect:Event — ネットワーク接続が確立されたときに送出されます。
 
ioError:IOErrorEvent — ホストが指定されていて、入出力エラーが発生して接続が失敗した場合に送出されます。
 
securityError:SecurityErrorEventSocket.connect() の呼び出しによって、ソケットポリシーファイルを提供しないサーバや、特定のポートに対して呼び出し元のホストアクセスを許可しないポリシーファイルを持つサーバに接続しようとしたときに送出されます。詳細については、『ActionScript 3.0 のプログラミング』の「Flash Player セキュリティ」の章を参照してください。

例外
IOError — ホストが指定されていないので、接続に失敗しました。
 
SecurityError — このエラーは、SWF コンテンツ内で次の理由で発生します。
  • 信頼されていないローカル SWF はインターネットへの接続を許可されません。この制限は、このファイルを local-with-networking または trusted として分類し直すことで回避できます。
  • 65535 より大きいソケットポートを指定することはできません。
  • SWF コンテンツがある HTML ページでは、allowNetworking パラメータ(object タグおよび embed タグ)は "none" に設定します。

関連項目

flush()メソッド 
public function flush():void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットの出力バッファに蓄積されたデータをフラッシュします。write メソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readBoolean()メソッド 
public function readBoolean():Boolean

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットからブール値を読み取ります。1 バイトを読み取った後、メソッドはバイトがゼロ以外の場合は true、それ以外の場合は false を返します。

戻り値
Boolean — 読み取られたバイトがゼロ以外の場合に値は true になり、それ以外の場合は false になります。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readByte()メソッド 
public function readByte():int

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから符号付きバイトを読み取ります。

戻り値
int — 値は -128 ~ 127 です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readBytes()メソッド 
public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから、length パラメータで指定したデータバイト数を読み取ります。このバイトは、指定したバイト配列の、offset で指定された位置以降に読み込まれます。

パラメータ

bytes:ByteArray — データの読み込み先の ByteArray オブジェクトです。
 
offset:uint (default = 0) — データの読み取りを開始するバイト配列のオフセットです。
 
length:uint (default = 0) — 読み取るバイト数です。デフォルト値の 0 に設定すると、すべてのデータが読み取られます。


例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readDouble()メソッド 
public function readDouble():Number

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから IEEE 754 倍精度浮動小数点数を読み取ります。

戻り値
Number — IEEE 754 倍精度浮動小数点数です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readFloat()メソッド 
public function readFloat():Number

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから IEEE 754 単精度浮動小数点数を読み取ります。

戻り値
Number — IEEE 754 単精度浮動小数点数です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readInt()メソッド 
public function readInt():int

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから符号付き 32 ビット整数を読み取ります。

戻り値
int — 値は -2147483648 ~ 2147483647 です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readMultiByte()メソッド 
public function readMultiByte(length:uint, charSet:String):String

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

指定した文字セットを使用して、バイトストリームからマルチバイトストリングを読み取ります。

パラメータ

length:uint — バイトストリームから読み取るバイト数です。
 
charSet:String — バイトの解釈に使用する文字セットを表すストリングです。文字セットのストリングには、"shift_jis""CN-GB"、および "iso-8859-1" があります。完全な一覧については、「サポートする文字セット」を参照してください。

メモ : charSet パラメータの値が現在のシステムによって認識されない場合、アプリケーションはシステムのデフォルトコードページを文字セットとして使用します。たとえば、charSet パラメータの指定で、myTest.readMultiByte(22, "iso-8859-01") のように、011 の代わりに使用した場合、その文字セットパラメータは開発マシンでは認識されるかもしれませんが、別のマシンでは認識されない可能性があります。もう一方のマシンでは、アプリケーションがシステムのデフォルトコードページを使用することになります。

戻り値
String — UTF-8 エンコードされたストリングです。

例外
EOFError — 読み取り可能なデータが不足しています。
readObject()メソッド 
public function readObject():*

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから AMF 直列化形式でエンコードされたオブジェクトを読み取ります。

戻り値
* — 非直列化されたオブジェクトです。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

readShort()メソッド 
public function readShort():int

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから符号付き 16 ビット整数を読み取ります。

戻り値
int — 値は -32768 ~ 32767 です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readUnsignedByte()メソッド 
public function readUnsignedByte():uint

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから符号なしバイトを読み取ります。

戻り値
uint — 値は 0 ~ 255 です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readUnsignedInt()メソッド 
public function readUnsignedInt():uint

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから符号なし 32 ビット整数を読み取ります。

戻り値
uint — 値は 0 ~ 4294967295 です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readUnsignedShort()メソッド 
public function readUnsignedShort():uint

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから符号なし 16 ビット整数を読み取ります。

戻り値
uint — 値は 0 ~ 65535 です。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readUTF()メソッド 
public function readUTF():String

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから UTF-8 ストリングを読み取ります。このストリングには、バイト単位の長さを示す符号なし short 型整数が前に付いているものと見なされます。

戻り値
String — UTF-8 ストリング。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
readUTFBytes()メソッド 
public function readUTFBytes(length:uint):String

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットから length パラメータで指定した UTF-8 バイト数を読み取り、ストリングを返します。

パラメータ

length:uint — 読み取るバイト数です。

戻り値
String — UTF-8 ストリング。

例外
EOFError — 読み取り可能なデータが不足しています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。
writeBoolean()メソッド 
public function writeBoolean(value:Boolean):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットにブール値を書き込みます。このメソッドは 1 バイトを書き込みます。1 (true の場合) または 0 (false の場合) のいずれかの値が使用されます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:Boolean — ソケットに書き込まれる値は、1 ( true の場合) または 0 (false の場合) です。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeByte()メソッド 
public function writeByte(value:int):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに 1 バイトを書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:int — ソケットに書き込む値です。値の下位 8 ビットが使用されます。上位 24 ビットは無視されます。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeBytes()メソッド 
public function writeBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

指定したバイト配列のバイトのシーケンスを書き込みます。書き込み操作は、offset で指定された位置から開始されます。

length パラメータを省略するとデフォルトの長さ 0 が使用され、offset の位置からバッファ全体が書き込まれます。

offset パラメータを省略した場合も、バッファ全体が書き込まれます。

offset または length が範囲外の場合は、bytes 配列の始まりと終わりに合うように調整されます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

bytes:ByteArray — データの書き込み元の ByteArray オブジェクトです。
 
offset:uint (default = 0) — データの書き込みを開始する、bytes ByteArray オブジェクトへのゼロから始まるオフセットです。
 
length:uint (default = 0) — 書き込むバイト数です。デフォルト値の 0 に設定すると、offset パラメータで指定した値以降にバッファ全体が書き込まれます。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeDouble()メソッド 
public function writeDouble(value:Number):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに IEEE 754 倍精度浮動小数点数を書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:Number — ソケットに書き込む値です。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeFloat()メソッド 
public function writeFloat(value:Number):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに IEEE 754 単精度浮動小数点数を書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:Number — ソケットに書き込む値です。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeInt()メソッド 
public function writeInt(value:int):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに 32 ビット符号付き整数を書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:int — ソケットに書き込む値です。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeMultiByte()メソッド 
public function writeMultiByte(value:String, charSet:String):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

指定した文字セットを使用して、バイトストリームからマルチバイトストリングを書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:String — 書き込まれるストリング値です。
 
charSet:String — バイトの解釈に使用する文字セットを表すストリングです。文字セットのストリングには、"shift_jis""CN-GB"、および "iso-8859-1" があります。完全な一覧については、「サポートする文字セット」を参照してください。

関連項目

writeObject()メソッド 
public function writeObject(object:*):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに AMF 直列化形式でオブジェクトを書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

object:* — 直列化されるオブジェクトです。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeShort()メソッド 
public function writeShort(value:int):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに 16 ビット整数を書き込みます。次のようにバイトが書き込まれます。

(v >> 8) & 0xff v & 0xff

パラメータの下位 16 ビットが使用されます。上位 16 ビットは無視されます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:int — ソケットに書き込む値です。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeUnsignedInt()メソッド 
public function writeUnsignedInt(value:uint):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに 32 ビット符号なし整数を書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:uint — ソケットに書き込む値です。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeUTF()メソッド 
public function writeUTF(value:String):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

指定された UTF-8 ストリングの長さ (バイト単位) を示す 16 ビット符号なし整数をソケットに書き込み、その後にストリング自体を書き込みます。

ストリングを書き込む前に、メソッドによってストリングのすべての文字を表すのに必要なバイト数が計算されます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:String — ソケットに書き込むストリングです。


例外
RangeError — 長さが 65535 を超えています。
 
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

writeUTFBytes()メソッド 
public function writeUTFBytes(value:String):void

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットに UTF-8 ストリングを書き込みます。

メモ : このメソッドで書き込まれるデータは、すぐには転送されません。flush() メソッドが呼び出されるまでキューに置かれます。

パラメータ

value:String — ソケットに書き込むストリングです。


例外
IOError — ソケットで I/O エラーが発生したか、ソケットが開いていません。

関連項目

イベントの詳細
close イベント
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.CLOSE

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

サーバーによりソケット接続が閉じられたときに送出されます。close イベントは、サーバーにより接続が閉じられたときのみ送出されます。Socket.close() メソッドを呼び出しても送出されません。

Event.CLOSE 定数は、type プロパティ(close イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
target接続が閉じられたオブジェクトです。
connect イベント  
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.CONNECT

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ネットワーク接続が確立されたときに送出されます。

Event.CONNECT 定数は、type プロパティ(connect イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetネットワーク接続を確立した Socket オブジェクトまたは XMLSocket オブジェクトです。
ioError イベント  
イベントオブジェクトの型: flash.events.IOErrorEvent
プロパティ IOErrorEvent.type = flash.events.IOErrorEvent.IO_ERROR

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

入出力エラーが発生して送信またはロード操作が失敗したときに送出されます。

type プロパティ (ioError イベントオブジェクト) の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
errorID特定のエラーに関連付けられた参照番号です(AIR のみ)。
target入出力エラーが発生したネットワークオブジェクトです。
textエラーメッセージとして表示されるテキストです。
securityError イベント  
イベントオブジェクトの型: flash.events.SecurityErrorEvent
プロパティ SecurityErrorEvent.type = flash.events.SecurityErrorEvent.SECURITY_ERROR

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

Socket.connect() の呼び出しによって、呼び出し元のセキュリティサンドボックスの外にあるサーバーや 1024 未満のポート番号に対して接続しようとしたときに送出されます。

SecurityErrorEvent.SECURITY_ERROR 定数は、type プロパティ(securityError イベントオブジェクト)の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetセキュリティエラーを報告するネットワークオブジェクトです。
textエラーメッセージとして表示されるテキストです。

関連項目

socketData イベント  
イベントオブジェクトの型: flash.events.ProgressEvent
プロパティ ProgressEvent.type = flash.events.ProgressEvent.SOCKET_DATA

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

ソケットがデータを受信したときに送出されます。socketData タイプのイベントでは、ProgressEvent.bytesTotal プロパティは使用されません。

type プロパティ (socketData イベントオブジェクト) の値を定義します。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetEvent をアクティブに処理しているオブジェクトです。
bytesLoadedリスナーがイベントを処理しているときにロードされたアイテム数またはバイト数です。
bytesTotal0。このプロパティは、socketData イベントオブジェクトによって使用されません。
target進行状況をレポートする Socket オブジェクトです。
例の使用法
SocketExample.as

次の例では、ソケットに対して読み取りおよび書き込みを行い、socket イベント中に転送される情報を出力します。この例のハイライトは、次のとおりです。
  1. コンストラクタが CustomSocket インスタンスの socket を作成し、ホスト名 localhost とポート 80 をパラメータとして渡します。CustomSocket は Socket を継承するので、super() を呼び出すと Socket のコンストラクタが呼び出されます。
  2. 次に configureListeners() メソッドが呼び出され、このメソッドにより Socket イベントのリスナーが追加されます。
  3. 最後に、ソケット connect() メソッドがホスト名 localhost、ポート番号 80 で呼び出されます。

メモ : この例を実行するには、SWF が存在するドメインと同じドメインで実行され、ポート 80 でリッスンするサーバー(この例では localhost)が必要です。


package {
    import flash.display.Sprite;

    public class SocketExample extends Sprite {

        public function SocketExample() {
            var socket:CustomSocket = new CustomSocket("localhost", 80);
        }
    }
}

import flash.errors.*;
import flash.events.*;
import flash.net.Socket;

class CustomSocket extends Socket {
    private var response:String;

    public function CustomSocket(host:String = null, port:uint = 0) {
        super();
        configureListeners();
        if (host && port)  {
            super.connect(host, port);
        }
    }

    private function configureListeners():void {
        addEventListener(Event.CLOSE, closeHandler);
        addEventListener(Event.CONNECT, connectHandler);
        addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
        addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);
    }

    private function writeln(str:String):void {
        str += "\n";
        try {
            writeUTFBytes(str);
        }
        catch(e:IOError) {
            trace(e);
        }
    }

    private function sendRequest():void {
        trace("sendRequest");
        response = "";
        writeln("GET /");
        flush();
    }

    private function readResponse():void {
        var str:String = readUTFBytes(bytesAvailable);
        response += str;
    }

    private function closeHandler(event:Event):void {
        trace("closeHandler: " + event);
        trace(response.toString());
    }

    private function connectHandler(event:Event):void {
        trace("connectHandler: " + event);
        sendRequest();
    }

    private function ioErrorHandler(event:IOErrorEvent):void {
        trace("ioErrorHandler: " + event);
    }

    private function securityErrorHandler(event:SecurityErrorEvent):void {
        trace("securityErrorHandler: " + event);
    }

    private function socketDataHandler(event:ProgressEvent):void {
        trace("socketDataHandler: " + event);
        readResponse();
    }
}




 

 

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

現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/net/Socket.html