パッケージ | flash.net |
クラス | public class NetConnection |
継承 | NetConnection EventDispatcher Object |
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
NetConnection.connect()
を呼び出して、接続を確立します。NetStream クラスを使用して、メディアおよびデータのストリームを接続に送信します。
コンテンツとデータを Flash Player および AIR にロードする際のセキュリティ情報については、以下を参照してください。
- コンテンツとデータを Web サーバーまたはローカルから Flash Player にロードする場合は、「Flash Player Developer Center: Security」を参照してください。
- コンテンツとデータを Flash Media Server から Flash Player および AIR にロードする場合は、Flash Media Server のドキュメントを参照してください。
- コンテンツとデータを AIR にロードする場合は、「Adobe AIR Developer Center」を参照してください。
このクラスのコールバックメソッドを記述するには、クラスを拡張してサブクラスでコールバックメソッドを定義するか、client
プロパティをオブジェクトに割り当てて、そのオブジェクトでコールバックメソッドを定義します。
関連する API エレメント
プロパティ | 定義元 | ||
---|---|---|---|
client : Object
コールバックメソッドが呼び出されるオブジェクトを示します。 | NetConnection | ||
connected : Boolean [読み取り専用]
永続的な RTMP 接続を介して(true)、またはそれ以外の方法で(false)サーバーに接続されていることを示します。 | NetConnection | ||
connectedProxyType : String [読み取り専用]
Flash Media Server への正常な接続を作成するために使用するプロキシタイプ。 | NetConnection | ||
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
defaultObjectEncoding : uint [静的]
NetConnection オブジェクトのデフォルトオブジェクトのエンコードです。 | NetConnection | ||
farID : String [読み取り専用]
この Flash Player インスタンスまたは Adobe AIR インスタンスが接続されている Flash Media Server インスタンスの識別子。 | NetConnection | ||
farNonce : String [読み取り専用]
実際には Flash Media Server によって選択される値で、この接続に一意です。 | NetConnection | ||
httpIdleTimeout : Number
HTTP 応答の待機時間(ミリ秒単位)です。 | NetConnection | ||
maxPeerConnections : uint
Flash Player または Adobe AIR のこのインスタンスで可能となるピアーの受信接続と送信接続の総数。 | NetConnection | ||
nearID : String [読み取り専用]
この NetConnection インスタンスに対する Flash Player インスタンスまたは Adobe AIR インスタンスの識別子。 | NetConnection | ||
nearNonce : String [読み取り専用]
実際にはこの Flash Player インスタンスまたは Adobe AIR インスタンスによって選択される値で、この接続に一意です。 | NetConnection | ||
objectEncoding : uint
この NetConnection インスタンスのオブジェクトエンコードです。 | NetConnection | ||
protocol : String [読み取り専用]
接続の確立にプロトコルが使用されました。 | NetConnection | ||
proxyType : String
Flash Media Server への最初の接続に失敗した場合に実行する代替手段を指定します。 | NetConnection | ||
unconnectedPeerStreams : Array [読み取り専用]
パブリッシュする NetStream オブジェクトに関連付けられていない、すべてのピアーサブスクライバ NetStream オブジェクトを保持するオブジェクトです。 | NetConnection | ||
uri : String [読み取り専用]
NetConnection.connect() メソッドに渡された URI。 | NetConnection | ||
usingTLS : Boolean [読み取り専用]
HTTPS ではなく、ネイティブ TLS を使用してセキュア接続が確立されたかどうかを示します。 | NetConnection |
メソッド | 定義元 | ||
---|---|---|---|
NetConnection オブジェクトを作成します。 | NetConnection | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | ||
コンテキストヘッダーを AMF(Action Message Format)パケット構造に追加します。 | NetConnection | ||
Flash Media Server 上または Flash Remoting を実行しているアプリケーションサーバー上のコマンドまたはメソッドを呼び出します。 | NetConnection | ||
ローカルで開始した接続またはサーバーへの接続を閉じ、NetConnection.Connect.Closed を code プロパティとして、netStatus イベントを送出します。 | NetConnection | ||
Flash Media Server 上のアプリケーションまたは Flash Remoting への双方向の接続を作成するか、RTMFP ピアーツアーピアーグループ通信用に双方向のネットワークエンドポイントを作成します。 | NetConnection | ||
イベントをイベントフローに送出します。 | EventDispatcher | ||
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object | ||
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher |
イベント | 概要 | 定義元 | ||
---|---|---|---|---|
[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。 | EventDispatcher | |||
非同期形式で、つまりネイティブ非同期コードから例外がスローされると送出されます。 | NetConnection | |||
[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。 | EventDispatcher | |||
入出力エラーが発生してネットワーク処理が失敗したときに送出されます。 | NetConnection | |||
NetConnection オブジェクトが、そのステータスまたはエラーの状況をレポートするときに送出されます。 | NetConnection | |||
NetConnection.call() の呼び出しによって呼び出し元のセキュリティサンドボックスの外部にあるサーバーに接続しようとすると送出されます。 | NetConnection |
client | プロパティ |
client:Object
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
コールバックメソッドが呼び出されるオブジェクトを示します。デフォルト値はこの NetConnection インスタンスです。client
プロパティを別のオブジェクトに設定すると、コールバックメソッドはそのオブジェクトで呼び出されます。
実装
public function get client():Object
public function set client(value:Object):void
例外
TypeError — client プロパティは、null 以外のオブジェクトに設定する必要があります。
|
connected | プロパティ |
connectedProxyType | プロパティ |
connectedProxyType:String
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Flash Media Server への正常な接続を作成するために使用するプロキシタイプ。指定できる値は、"none"
、"HTTP"
、"HTTPS"
、または "CONNECT"
です。
トンネル接続ではない場合、またはネイティブ SSL 接続である場合、値は "none"
です。
HTTP 経由のトンネル接続である場合、値は "HTTP"
です。
HTTPS 経由のトンネル接続である場合、値は""HTTPS"
です
プロキシサーバーを通じて CONNECT メソッドを使用するトンネル接続の場合、値は "CONNECT"
です。
実装
public function get connectedProxyType():String
例外
ArgumentError — NetConnection インスタンスが接続されていないときに、このプロパティにアクセスしようとしました。
|
defaultObjectEncoding | プロパティ |
defaultObjectEncoding:uint
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
NetConnection オブジェクトのデフォルトオブジェクトのエンコードです。バイナリデータにオブジェクトを書き込むかバイナリデータからオブジェクトを読み取るときに、データの直列化に使用される AMF(Action Message Format)のバージョンが defaultObjectEncoding
プロパティに示されます。これらは、ActionScript 3.0 フォーマット(ObjectEncoding.AMF3
)または ActionScript 1.0 および ActionScript 2.0 フォーマット(ObjectEncoding.AMF0
)です。
デフォルト値は ObjectEncoding.AMF3
です。NetConnection.defaultObjectEncoding
を変更しても、既存の NetConnection インスタンスには影響せず、それ以降に作成されたインスタンスにのみ影響します。
オブジェクトのエンコードを(アプリケーション全体に対してではなく)個別に設定するには、NetConnection オブジェクトの objectEncoding
プロパティを設定します。
詳細については、objectEncoding
プロパティの説明を参照してください。
実装
public static function get defaultObjectEncoding():uint
public static function set defaultObjectEncoding(value:uint):void
関連する API エレメント
farID | プロパティ |
farNonce | プロパティ |
httpIdleTimeout | プロパティ |
httpIdleTimeout:Number
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2.6 |
HTTP 応答の待機時間(ミリ秒単位)です。デフォルト値は 0 です。
httpIdleTimeout
の値はNumber
です。- HTTP 接続を使用する場合、正の値は非アクティブな接続を保持する時間をミリ秒単位で示します。
- ゼロの値は、プラットフォームで指定されているデフォルトのネットワーキングアイドルタイムアウト値を使用することを示します。
- 負の値を指定すると、
RangeError
になります。 httpIdleTimeout
で指定した値を超過すると、netStatus
イベントが送出されます。- このプロパティは、HTTP 接続と共に作成された
NetConnection
オブジェクトにのみ影響します。RTMP、RTMFP、または他の HTTP チャンネルと共に作成されたNetConnection
オブジェクトは、このプロパティの影響を受けません。
//Set the timeout to 5 seconds connection = new NetConnection(); connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); connection.httpIdleTimeout = 5000;
NetConnection
を使用したタイムアウトは httpIdleTimeout
値を使用したタイムアウトに比較して長くかかることがあります。
実装
public function get httpIdleTimeout():Number
public function set httpIdleTimeout(value:Number):void
maxPeerConnections | プロパティ |
maxPeerConnections:uint
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
Flash Player または Adobe AIR のこのインスタンスで可能となるピアーの受信接続と送信接続の総数。デフォルト値は 8 です。
この値は、発行者接続とサブスクライバ接続で違いはありません。ピアー接続が存在するときにこの値を減らす場合は、その新しい値は新しい受信接続だけに影響します。既存の接続は中断されません。
実装
public function get maxPeerConnections():uint
public function set maxPeerConnections(value:uint):void
nearID | プロパティ |
nearID:String
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
この NetConnection インスタンスに対する Flash Player インスタンスまたは Adobe AIR インスタンスの識別子。このプロパティは、RTMFP 接続にのみ意味があります。
すべての NetConnection インスタンスは一意の nearID
プロパティを持ちます。Flash Player インスタンス、Adobe AIR インスタンスまたは NetConnection インスタンスで同じ識別子を持つものはありません。
他の Flash Player インスタンスまたは Adobe AIR インスタンスは、このクライアントとの新しい NetStream 接続の peerID
としてこの識別子を使用します。次に、この識別子は、このインスタンスに接続されているピアー NetStream の farID
となります。
実装
public function get nearID():String
関連する API エレメント
nearNonce | プロパティ |
objectEncoding | プロパティ |
objectEncoding:uint
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
この NetConnection インスタンスのオブジェクトエンコードです。
バイナリデータにオブジェクトを書き込むかバイナリデータからオブジェクトを読み取るときに、データの直列化に使用される AMF(Action Message Format)のバージョンが defaultObjectEncoding
プロパティに示されます。これらは、ActionScript 3.0 形式(ObjectEncoding.AMF3
)または ActionScript 1.0 および ActionScript 2.0 形式(ObjectEncoding.AMF0
)です。objectEncoding
プロパティを設定することにより、NetConnection インスタンスの AMF のバージョンを設定します。
アプリケーションが Flash Player 9 以前にリリースされたサーバーと通信する必要がある場合は、このプロパティを理解することが重要です。次の 3 つのシナリオが可能です。
- AMF3 をサポートするサーバー(例えば、Flex Data Services 2 または Flash Media Server 3)に接続します。
defaultObjectEncoding
のデフォルト値はObjectEncoding.AMF3
です。この ファイルで作成された NetConnection インスタンスはすべて AMF3 直列化を使用するので、objectEncoding
プロパティを設定する必要はありません。 - AMF3 をサポートしないサーバー(例えば、Flash Media Server 2)に接続します。このシナリオでは、静的な
NetConnection.defaultObjectEncoding
プロパティをObjectEncoding.AMF0
に設定します。この SWF ファイルに作成されるすべての NetConnection インスタンスでは、AMF0 直列化を使用します。objectEncoding
プロパティを設定する必要はありません。 - 異なるエンコーディングバージョンを使用する複数のサーバーに接続する場合。
defaultObjectEncoding
を使用せずに、各接続のobjectEncoding
プロパティを使用して、接続ごとにオブジェクトエンコーディングを設定します。このプロパティをObjectEncoding.AMF0
に設定すると、AMF0 エンコーディングを使用するサーバー(Flash Media Server 2 など)に接続します。ObjectEncoding.AMF3
に設定すると、AMF3 エンコーディングを使用するサーバー(Flex Data Services 2 など)に接続します。
NetConnection インスタンスが接続されたら、その objectEncoding
プロパティは読み取り専用になります。
サーバーへの接続に誤ったエンコーディングを使用した場合は、NetConnection オブジェクトにより netStatus
イベントが送出されます。 NetStatusEvent.info
プロパティには、code
プロパティ値 NetConnection.Connect.Failed
を持つ情報オブジェクトとオブジェクトエンコードが正しくないことを示す説明が含まれています。
実装
public function get objectEncoding():uint
public function set objectEncoding(value:uint):void
例外
ReferenceError — NetConnection インスタンスが接続されているときに、objectEncoding プロパティの値を設定しようとしました。
| |
ArgumentError — このプロパティに、ObjectEncoding.AMF0 または ObjectEncoding.AMF3 以外の値が設定されました。
|
関連する API エレメント
protocol | プロパティ |
protocol:String
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
接続の確立にプロトコルが使用されました。Flash Media Server を使用するときは、このプロパティが適切です。有効な値は次のとおりです。
"rtmp"
:リアルタイムメッセージングプロトコル(RTMP)"rtmpe"
:暗号化 RTMP"rtmpt"
:HTTP トンネリング RTMP"rtmpte"
:HTTP トンネリング暗号化 RTMP"rtmps"
: HTTPS ベースの RTMP"rtmfp"
:リアルタイムメディアフロープロトコル(RTMFP)
実装
public function get protocol():String
例外
ArgumentError — NetConnection インスタンスが接続されていないときに、このプロパティにアクセスしようとしました。
|
proxyType | プロパティ |
proxyType:String
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Flash Media Server への最初の接続に失敗した場合に実行する代替手段を指定します。proxyType
プロパティを設定してから NetConnection.connect()
メソッドを呼び出します。
有効な値は、"none"
、"HTTP"
、"CONNECTOnly"
、"CONNECT"
および "best"
です。デフォルト値は "none"
です。
ネイティブ SSL を使用するには、プロパティに "best"
を設定します。プレーヤーが、デフォルトの 443 ポート経由または指定した他のポート経由でサーバーへの直接接続を作成できず、プロキシサーバーが所定の位置にある場合、プレーヤーは CONNECT メソッドの使用を試行します。この試行に失敗した場合、プレーヤーは HTTPS 経由でトンネル接続します。
このプロパティが "CONNECTOnly"
に設定されている場合、プレーヤーは最初に CONNECT
メソッドの使用を試行します。失敗した場合は、フォールバックは実行されません。
プロパティが "HTTP"
に設定されていて、直接接続に失敗した場合は、HTTP トンネリングが使用されます。プロパティが "CONNECT"
に設定されており、直接接続に失敗した場合は、トンネリングの CONNECT
メソッドが使用されます。これに失敗すると、接続は HTTP トンネリングにフォールバックされなくなります。
このプロパティは RTMP、RTMPS、または RTMPTを使用している場合にのみ適用できます。CONNECT
および CONNECTOnly
メソッドは、プロキシサーバー経由でネットワークに接続しているユーザーにのみ適用できます。
実装
public function get proxyType():String
public function set proxyType(value:String):void
unconnectedPeerStreams | プロパティ |
unconnectedPeerStreams:Array
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
パブリッシュする NetStream オブジェクトに関連付けられていない、すべてのピアーサブスクライバ NetStream オブジェクトを保持するオブジェクトです。パブリッシュする NetStream オブジェクトに関連付けられたサブスクライバ NetStream オブジェクトは、NetStream.peerStreams
配列にあります。
実装
public function get unconnectedPeerStreams():Array
関連する API エレメント
uri | プロパティ |
usingTLS | プロパティ |
usingTLS:Boolean
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
HTTPS ではなく、ネイティブ TLS を使用してセキュア接続が確立されたかどうかを示します。このプロパティは、NetConnection オブジェクトが接続されている場合にのみ有効です。
実装
public function get usingTLS():Boolean
例外
ArgumentError — NetConnection インスタンスが接続されていないときに、このプロパティにアクセスしようとしました。
|
NetConnection | () | コンストラクター |
public function NetConnection()
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
NetConnection オブジェクトを作成します。connect()
メソッドを呼び出して、接続を作成します。
アプリケーションが Flash Player 9 以前にリリースされたサーバーと通信する必要がある場合は、NetConnection オブジェクトの objectEncoding
プロパティを設定します。
次のコードでは、NetConnection オブジェクトを作成します。
var nc:NetConnection = new NetConnection();
関連する API エレメント
addHeader | () | メソッド |
public function addHeader(operation:String, mustUnderstand:Boolean = false, param:Object = null):void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
コンテキストヘッダーを AMF(Action Message Format)パケット構造に追加します。このヘッダーは、将来のすべての AMF パケットと共に送信されます。同じ名前を使用して NetConnection.addHeader()
を呼び出すと、既存のヘッダーが新しいヘッダーに置き換えられます。新しいヘッダーは、NetConnection オブジェクトのある間存在し続けます。ヘッダーの名前を使用して NetConnection.addHeader()
を呼び出し、未定義のオブジェクトを削除して、ヘッダーを削除できます。
パラメーター
operation:String — ヘッダーとヘッダーに関連付けられている ActionScript オブジェクトデータを指定します。
| |
mustUnderstand:Boolean (default = false ) — true 値は、サーバーがこのヘッダーに対応しており、次のヘッダーまたはメッセージを処理する前に、サーバーでヘッダーを処理する必要があることを示します。
| |
param:Object (default = null ) — 任意の ActionScript オブジェクトです。
|
call | () | メソッド |
public function call(command:String, responder:Responder, ... arguments):void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Flash Media Server 上または Flash Remoting を実行しているアプリケーションサーバー上のコマンドまたはメソッドを呼び出します。NetConnection.call()
を呼び出す前に、NetConnection.connect()
を呼び出してサーバーに接続する必要があります。このメソッドに渡すには、サーバーサイド関数を作成する必要があります。
一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。
パラメーター
command:String — [オブジェクトのパス/]method という形式で指定されたメソッドです。例えば、someObject/doSomething コマンドは、clientObject.someObject.doSomething() メソッドを、省略可能なすべての ... arguments パラメーターと共に呼び出すようにリモートサーバーに対して指定します。オブジェクトのパスが見つからない場合は、リモートサーバーで clientObject.doSomething() が呼び出されます。
Flash Media Server では、 | |
responder:Responder — サーバーからの戻り値を処理するために使用される、省略可能なオブジェクトです。Responder オブジェクトには、返される結果を処理するための 2 つのメソッド result および status が定義されています。結果としてエラーが返された場合は status が呼び出され、それ以外の場合は result が呼び出されます。NetConnection オブジェクトが接続状態に関連したエラーに対処するものであるのに対して、Responder オブジェクトは個々の操作に関連したエラーを処理することができます。
| |
... arguments — 省略可能なパラメーターです。別の ActionScript オブジェクトへの参照を含む、ActionScript の任意の型を取ることができます。メソッドがリモートアプリケーションサーバーで実行されると、これらのパラメーターは command パラメーターで指定されたメソッドに渡されます。
|
イベント
securityError: — 呼び出し元のセキュリティサンドボックスの外部にあるサーバーとの通信を試行する呼び出しです。サーバーでポリシーファイルを使用することにより、この問題を回避できます。
|
関連する API エレメント
close | () | メソッド |
public function close():void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
ローカルで開始した接続またはサーバーへの接続を閉じ、NetConnection.Connect.Closed
を code
プロパティとして、netStatus
イベントを送出します。
このメソッドは、接続上で実行されているすべての NetStream オブジェクトを切断します。キューに未送信のデータはすべて破棄されます。(接続を閉じずにローカルまたはサーバーストリームを終了するには、NetStream.close()
を使用します。)接続を閉じて新しい接続を作成する場合は、新しい NetConnection オブジェクトを呼び出し、connect()
メソッドをもう一度呼び出す必要があります。
close()
メソッドは、この接続上で実行されているすべてのリモート共有オブジェクトも切断します。ただし、再接続するために共有オブジェクトを再作成する必要はありません。SharedObject.connect()
を呼び出すだけで、共有オブジェクトへの接続を再確立できます。また、共有オブジェクトへの接続が再確立されると、NetConnection.close()
を発行したときにキュー内にあった共有オブジェクトのデータがすべて送信されます。
Flash Media Server では、クライアントからサーバーへの接続が不要になったときは close()
を呼び出すことをお勧めします。close()
を呼び出すと、使用されていない接続が最も短時間でクリーンアップされます。予備の手段として、アイドル状態の接続を自動的に閉じるようにサーバーを設定できます。詳細については、Flash Media Server の設定と管理のガイドを参照してください。
関連する API エレメント
connect | () | メソッド |
public function connect(command:String, ... arguments):void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Flash Media Server 上のアプリケーションまたは Flash Remoting への双方向の接続を作成するか、RTMFP ピアーツアーピアーグループ通信用に双方向のネットワークエンドポイントを作成します。ステータスまたはエラーの状況をレポートするために、NetConnection.connect()
によって netStatus
イベントが送出されます。
NetConnection.connect()
を呼び出して、次の操作を行います。
- 「null」を渡して、ローカルファイルシステムまたは Web サーバーからビデオファイルと mp3 ファイルを再生します。
- 「http」 URL を渡して、Flash Remoting を実行しているアプリケーションサーバーに接続します。NetServices クラスを使用して、NetConnection オブジェクトでアプリケーションサーバーの関数を呼び出し、アプリケーションサーバーから結果を取得します。詳細については、Flash Remoting のマニュアルを参照してください。
- 「rtmp/e/s」 URL を渡して、Flash Media Server アプリケーションに接続します。
- 「rtmfp」 URL を渡して、RTMFP クライアント-サーバー通信、ピアーツーピアー通信および IP マルチキャスト通信用に双方向のネットワークエンドポイントを作成します。
- ストリング「rtmfp:」を渡して、RTMFP IP マルチキャスト通信用にサーバーレスの双方向ネットワークエンドポイントを作成します。
次のセキュリティモデルを考慮してください。
- デフォルトでは、Flash Player または AIR でのサンドボックス間のアクセスは拒否されます。URL ポリシーファイルを使用することで、Web サイトでリソースにアクセスできるようになります。
- アプリケーションで、サーバー上のリソースへのアクセスを拒否できます。Flash Media Server アプリケーションでは、サーバーサイド ActionScript コードを使用してアクセスを拒否します。「Flash Media Server のリソース」を参照してください。
- 呼び出し元ファイルがローカルファイルシステムのサンドボックスに配置されている場合は、
NetConnection.connect()
を呼び出すことはできません。 - 一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。
- SWF ファイルがこのメソッドを呼び出さないようにするには、
allowNetworking
パラメーター(SWF コンテンツを含んでいる HTML ページのobject
タグおよびembed
タグのパラメーター)を設定します。
ただし、Adobe AIR では、アプリケーション
セキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。
セキュリティについて詳しくは、Adobe Flash Player デベロッパーセンターの「Security」を参照してください。
パラメーター
command:String — 以下の値のいずれかを command パラメーターに使用します。
この接続タイプには次の制限があります。 同じ LAN 上のピアーのみが相互に検出できます。 Flash Player は、IP マルチキャストを使用してストリームを受信できますが、送信することはできません。 Flash Player および AIR はピアーツーピアーグループでストリームを送受信できますが、ピアーは、IP マルチキャストを使用して同じ LAN 上で検出されなければなりません。 このテクニックは 1 対 1 の通信には使用できません。 | |
... arguments — command で指定されたアプリケーションに渡された任意の型のパラメーターです。このパラメーターはオプションです。Flash Media Server では、アプリケーションのサーバーサイドコードの application.onConnect() イベントハンドラーに追加の引数が渡されます。onConnect() に引数を定義して処理する必要があります。
|
例外
ArgumentError — command パラメーターに渡された URI は適切にフォーマットされていません。
| |
IOError — 接続に失敗しました。これは、connect() を netStatus イベントハンドラー内から呼び出すと起こることがあります。この呼び出しは許可されていません。
| |
SecurityError — Local-with-filesystem SWF ファイルはインターネットと通信できません。この問題は、SWF ファイルを local-with-networking または trusted として分類し直すことで回避できます。
| |
SecurityError — 一般的な予約ポートには接続できません。遮断されたポートの詳しいリストについては、『ActionScript 3.0 開発ガイド』の「ネットワーク API の制限」を参照してください。
|
関連する API エレメント
asyncError | イベント |
flash.events.AsyncErrorEvent
プロパティ AsyncErrorEvent.type =
flash.events.AsyncErrorEvent.ASYNC_ERROR
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
非同期形式で、つまりネイティブ非同期コードから例外がスローされると送出されます。
AsyncErrorEvent.ASYNC_ERROR
定数は、type
プロパティ(asyncError
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | イベントを送出するオブジェクトです。 |
error | イベントをトリガーしたエラーです。 |
ioError | イベント |
flash.events.IOErrorEvent
プロパティ IOErrorEvent.type =
flash.events.IOErrorEvent.IO_ERROR
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
入出力エラーが発生してネットワーク処理が失敗したときに送出されます。
type
プロパティ(ioError
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
errorID | 特定のエラーに関連付けられた参照番号です(AIR のみ)。 |
target | 入出力エラーが発生したネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
netStatus | イベント |
flash.events.NetStatusEvent
プロパティ NetStatusEvent.type =
flash.events.NetStatusEvent.NET_STATUS
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
NetConnection オブジェクトが、そのステータスまたはエラーの状況をレポートするときに送出されます。netStatus
イベントには info
プロパティが含まれます。このプロパティは、接続試行が成功したかどうかなど、イベントに関する特定の情報を含む情報オブジェクトです。
type
プロパティ(netStatus
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
info | オブジェクトのステータスまたはエラー状態を記述するプロパティを持つオブジェクトです。 |
target | そのステータスを報告する NetConnection または NetStream オブジェクトです。 |
関連する API エレメント
securityError | イベント |
flash.events.SecurityErrorEvent
プロパティ SecurityErrorEvent.type =
flash.events.SecurityErrorEvent.SECURITY_ERROR
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 1.0, Flash Player 9, Flash Lite 4 |
NetConnection.call() の呼び出しによって呼び出し元のセキュリティサンドボックスの外部にあるサーバーに接続しようとすると送出されます。
SecurityErrorEvent.SECURITY_ERROR
定数は、type
プロパティ(securityError
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | セキュリティエラーを報告するネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
関連する API エレメント
この例では、Video オブジェクトと NetStream オブジェクトを作成し、Video.attachNetStream()
メソッドと NetStream.play()
メソッドを呼び出すコードがハンドラー関数に配置されます。ハンドラーは、NetConnection オブジェクトとの接続が成功した場合にのみ呼び出されます。つまり、netStatus
イベントが返す info
オブジェクトの code
プロパティが成功を示しているときです。接続に成功するまで待ってから、NetStream.play()
を呼び出すことをお勧めします。
package { import flash.display.Sprite; import flash.events.NetStatusEvent; import flash.events.SecurityErrorEvent; import flash.media.Video; import flash.net.NetConnection; import flash.net.NetStream; import flash.events.Event; public class NetConnectionExample extends Sprite { private var videoURL:String = "http://www.helpexamples.com/flash/video/cuepoints.flv"; private var connection:NetConnection; private var stream:NetStream; private var video:Video = new Video(); public function NetConnectionExample() { connection = new NetConnection(); connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); connection.connect(null); } private function netStatusHandler(event:NetStatusEvent):void { switch (event.info.code) { case "NetConnection.Connect.Success": connectStream(); break; case "NetStream.Play.StreamNotFound": trace("Stream not found: " + videoURL); break; } } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function connectStream():void { addChild(video); var stream:NetStream = new NetStream(connection); stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); stream.client = new CustomClient(); video.attachNetStream(stream); stream.play(videoURL); } } } class CustomClient { public function onMetaData(info:Object):void { trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate); } public function onCuePoint(info:Object):void { trace("cuepoint: time=" + info.time + " name=" + info.name + " type=" + info.type); } }
Tue Jun 12 2018, 10:34 AM Z