| パッケージ | flash.net |
| クラス | public class NetConnection |
| 継承 | NetConnection EventDispatcher Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
NetConnection クラスを使用すると、Flash Media Server がなくてもローカルファイルシステムまたは Web サーバーからビデオファイルや MP3 ファイルを再生できます。
サポートされているコーデックおよびファイル形式の詳細については、http://www.adobe.com/go/hardware_scaling_jp および Flash Media Server のマニュアルを参照してください。
NetConnection クラスを使用するときは、次のセキュリティモデルを考慮してください。
ただし、Adobe AIR では、application セキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。
詳細については、次のトピックを参照してください。
メモ : このクラスは、ActionScript 2.0 ではダイナミッククラスでしたが、sealed クラスになりました。このクラスのコールバックメソッドを記述するには、クラスを拡張してサブクラスでコールバックメソッドを定義する方法と、client プロパティを使用してオブジェクトを参照し、そのオブジェクトでコールバックメソッドを定義する方法があります。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
| client : Object
コールバックメソッドが呼び出されるオブジェクトを示します。 | NetConnection | ||
| connected : Boolean [読み取り専用]
永続的な RTMP 接続を介して (true)、またはそれ以外の方法で (false) サーバーに接続されていることを示します。 | NetConnection | ||
| connectedProxyType : String [読み取り専用]
Flash Media Server で NetConnection.connect() を正常に呼び出すために使用する、"none"、"HTTP"、"HTTPS"、"CONNECT" のいずれかのプロキシタイプです。 | NetConnection | ||
![]() | constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
| defaultObjectEncoding : uint [静的]
NetConnection オブジェクトのデフォルトオブジェクトのエンコードです。 | NetConnection | ||
| farID : String [読み取り専用]
この Flash Player インスタンスまたは Adobe AIR インスタンスが接続されている Flash Media Server インスタンスの識別子。 | NetConnection | ||
| farNonce : String [読み取り専用]
実際には Flash Media Server によって選択される値で、この接続に一意です。 | 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 | ||
![]() | prototype : Object [静的]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
| proxyType : String
サーバーへの初期接続に失敗した場合に実行する代替手段を指定します。 | 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 Player または AIR アプリケーションと Flash Media Server アプリケーションの間に双方向の接続を作成します。 | NetConnection | ||
![]() |
イベントをイベントフローに送出します。 | EventDispatcher | |
![]() |
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | |
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
![]() |
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() |
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | |
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。 | 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 |
コールバックメソッドが呼び出されるオブジェクトを示します。デフォルト値はこの NetConnection インスタンスです。client プロパティを別のオブジェクトに設定すると、コールバックメソッドはそのオブジェクトで呼び出されます。
public function get client():Object public function set client(value:Object):voidTypeError — client プロパティは、null 以外のオブジェクトに設定する必要があります。
|
| connected | プロパティ |
connected:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
永続的な RTMP 接続を介して (true)、またはそれ以外の方法で (false) サーバーに接続されていることを示します。HTTP を介して接続された場合、このプロパティは false です。ただし、アプリケーションサーバー上の Flash Remoting サービスに接続した場合は true です。
public function get connected():Boolean| connectedProxyType | プロパティ |
connectedProxyType:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
Flash Media Server で NetConnection.connect() を正常に呼び出すために使用する、"none"、"HTTP"、"HTTPS"、"CONNECT" のいずれかのプロキシタイプです。接続がトンネリングされていない場合、この値は "none" です。HTTP を使用して接続がトンネリングされている場合は "HTTP" です。HTTPS を使用して接続がトンネリングされている場合は "HTTPS" です。また、HTTP CONNECT を使用して接続がトンネリングされている場合は "CONNECT" です。
public function get connectedProxyType():StringArgumentError — NetConnection インスタンスが接続されていないときに、このプロパティにアクセスしようとしました。
|
| defaultObjectEncoding | プロパティ |
defaultObjectEncoding:uint| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
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 function set defaultObjectEncoding(value:uint):void関連項目
| farID | プロパティ |
farID:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
この Flash Player インスタンスまたは Adobe AIR インスタンスが接続されている Flash Media Server インスタンスの識別子。このプロパティは、RTMFP 接続にのみ意味があります。このプロパティの値は、RTMFP 接続が確立された後でのみ利用できます。
public function get farID():String関連項目
| farNonce | プロパティ |
farNonce:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
実際には Flash Media Server によって選択される値で、この接続に一意です。この値は、サーバ側では client.nearNonce 値となります。この値は、RTMFP、RTMPE および RTMPTE 接続についてのみ定義されます。
public function get farNonce():String| 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関連項目
| nearNonce | プロパティ |
nearNonce:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
実際にはこの Flash Player インスタンスまたは Adobe AIR インスタンスによって選択される値で、この接続に一意です。この値は、サーバ側では client.farNonce 値となります。この値は、RTMFP、RTMPE および RTMPTE 接続についてのみ定義されます。
public function get nearNonce():String| objectEncoding | プロパティ |
objectEncoding:uint| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
この 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 つのシナリオが可能です。
defaultObjectEncoding のデフォルト値は ObjectEncoding.AMF3 です。この ファイルで作成された NetConnection インスタンスはすべて AMF3 直列化を使用するので、objectEncoding プロパティを設定する必要はありません。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):voidReferenceError — NetConnection インスタンスが接続されているときに、objectEncoding プロパティの値を設定しようとしました。
| |
ArgumentError — このプロパティに、ObjectEncoding.AMF0 または ObjectEncoding.AMF3 以外の値が設定されました。
|
関連項目
| 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():StringArgumentError — NetConnection インスタンスが接続されていないときに、このプロパティにアクセスしようとしました。
|
| proxyType | プロパティ |
proxyType:String| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
サーバーへの初期接続に失敗した場合に実行する代替手段を指定します。proxyType プロパティを設定してから NetConnection.connect() メソッドを呼び出す必要があります。
指定できる値は、"none"、"HTTP"、"CONNECT" および "best" です。
このプロパティのデフォルト値は "none" です。この値を変更しない場合、アプリケーションは RTMPS に HTTPS トンネリングを使用します。このプロパティが "best" に設定されている場合、クライアントはネイティブ SSL を使用して接続を試みます。接続に失敗すると、別の接続方法が試みられます。プロパティが "HTTP" に設定されていて、直接接続に失敗した場合は、HTTP トンネリングが使用されます。プロパティが "CONNECT" に設定されており、直接接続に失敗した場合は、トンネリングの CONNECT メソッドが使用されます。これに失敗すると、接続は HTTP トンネリングにフォールバックされなくなります。
このプロパティは RTMP、RTMPS、または RTMPTを使用している場合にのみ適用できます。CONNECT メソッドは、プロキシサーバー経由でネットワークに接続しているユーザーにのみ適用できます。
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関連項目
| uri | プロパティ |
uri:String [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
NetConnection.connect() メソッドに渡された URI。NetConnection.connect() が呼び出されていない場合、または URI が渡されていない場合、このプロパティは undefined になります。
public function get uri():String| usingTLS | プロパティ |
usingTLS:Boolean [読み取り専用] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
HTTPS ではなく、ネイティブ TLS を使用してセキュア接続が確立されたかどうかを示します。このプロパティは、NetConnection オブジェクトが接続されている場合にのみ有効です。
public function get usingTLS():BooleanArgumentError — NetConnection インスタンスが接続されていないときに、このプロパティにアクセスしようとしました。
|
| NetConnection | () | コンストラクタ |
public function NetConnection()| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
NetConnection オブジェクトを作成します。connect() オブジェクトを呼び出して接続を作成します。
アプリケーションが Flash Player 9 以前にリリースされたサーバーと通信する必要がある場合、NetConnection オブジェクトの objectEncoding プロパティの設定作業が必要になることがあります。
関連項目
| addHeader | () | メソッド |
public function addHeader(operation:String, mustUnderstand:Boolean = false, param:Object = null):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
コンテキストヘッダを 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 Media Server 上または Flash Remoting を実行しているアプリケーションサーバー上のコマンドまたはメソッドを呼び出します。NetConnection.call() を呼び出す前に、NetConnection.connect() を呼び出してサーバーに接続する必要があります。このメソッドに渡すには、サーバーサイド関数を作成する必要があります。
一般的な予約ポートに接続することはできません。ブロックされているポートの一覧については、セキュリティに関する章(『ActionScript 3.0 のプログラミング』)の「ネットワーク API の制限」を参照してください。
パラメータ
command:String — [objectPath/]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: — 呼び出し元のセキュリティサンドボックスの外部にあるサーバーとの通信を試行する呼び出しです。サーバーでポリシーファイルを使用することにより、この問題を回避できます。 |
| close | () | メソッド |
public function close():void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
ローカルで開始した接続またはサーバーへの接続を閉じ、netStatus を code プロパティとして、NetConnection.Connect.Closed イベントを送出します。
このメソッドは、接続上で実行されているすべての NetStream オブジェクトを切断します。キューに未送信のデータはすべて破棄されます。 (接続を閉じずにローカルまたはサーバーストリームを終了するには、NetStream.close() () を使用します) 接続を閉じて新しい接続を作成する場合は、新しい NetConnection オブジェクトを呼び出し、connect() メソッドをもう一度呼び出す必要があります。
close() メソッドは、この接続上で実行されているすべてのリモート共有オブジェクトも切断します。ただし、再接続するために共有オブジェクトを再作成する必要はありません。SharedObject.connect() を呼び出すだけで、共有オブジェクトへの接続を再確立できます。また、共有オブジェクトへの接続が再確立されると、NetConnection.close() を発行したときにキュー内にあった共有オブジェクトのデータがすべて送信されます。
Flash Media Server では、クライアントからサーバーへの接続が不要になったときは close() を呼び出すことをお勧めします。close() を呼び出すと、使用されていない接続が最も短時間でクリーンアップされます。予備の手段として、アイドル状態の接続を自動的に閉じるようにサーバーを設定できます。詳細については、Flash Media Server の設定と管理のガイドを参照してください。
関連項目
| connect | () | メソッド |
public function connect(command:String, ... arguments):void| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
Flash Player または AIR アプリケーションと Flash Media Server アプリケーションの間に双方向の接続を作成します。NetConnection オブジェクトは、クライアントとサーバーの間のパイプに似ています。NetStream オブジェクトで、パイプを通してストリームを送信します。Flash Media Server がサポートしているコーデックおよびファイル形式の詳細については、Flash Media Server のマニュアルを参照してください。
Flash Media Server がない場合は、NetConnection.connect() を呼び出して、ローカルファイルシステムまたは Web サーバーからビデオファイルや MP3 ファイルを再生します。サポートされているコーデックおよびファイル形式の詳細については、http://www.adobe.com/go/hardware_scaling_jp を参照してください。
Flash Player または AIR アプリケーションと Flash Remoting サービスを実行しているアプリケーションサーバーの間に双方向の接続を作成します。NetServices クラスを使用して、NetConnection オブジェクトでアプリケーションサーバーの関数を呼び出し、アプリケーションサーバーから結果を取得します。詳細については、Flash Remoting のマニュアルを参照してください。
このメソッドを使用するときは、次のセキュリティモデルを考慮してください。
NetConnection.connect() を使用できません。allowNetworking パラメータ (object タグおよび embed タグのパラメータ) を設定します。ただし、Adobe AIR では、application セキュリティサンドボックス内のコンテンツ(AIR アプリケーションと共にインストールされたコンテンツ)は、これらのセキュリティ制限による制限を受けません。
詳細については、次のトピックを参照してください。
パラメータ
command:String — ローカルコンピュータのビデオファイルに接続している場合は、このパラメータに null を設定します。サーバーに接続している場合は、サーバー上のビデオファイルが格納されているアプリケーションの URI をこのパラメータに設定します。次のシンタックスを使用します。角括弧内のアイテムは省略できます。
Flash Media Server に接続するには、プロトコルとして サーバーがインストールされているホストから ファイルが提供されている場合は、 | |
... 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 の制限」を参照してください。
|
関連項目
| asyncError | イベント |
flash.events.AsyncErrorEventflash.events.AsyncErrorEvent.ASYNC_ERROR| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
非同期形式で、つまりネイティブ非同期コードから例外がスローされると送出されます。
AsyncErrorEvent.ASYNC_ERROR 定数は、type プロパティ(asyncError イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | イベントを送出するオブジェクトです。 |
error | イベントをトリガしたエラーです。 |
| ioError | イベント |
flash.events.IOErrorEventflash.events.IOErrorEvent.IO_ERROR| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
入出力エラーが発生してネットワーク処理が失敗したときに送出されます。
type プロパティ (ioError イベントオブジェクト) の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
errorID | 特定のエラーに関連付けられた参照番号です(AIR のみ)。 |
target | 入出力エラーが発生したネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
| netStatus | イベント |
flash.events.NetStatusEventflash.events.NetStatusEvent.NET_STATUS| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
NetConnection オブジェクトが、そのステータスまたはエラーの状況をレポートするときに送出されます。netStatus イベントには info プロパティが含まれます。このプロパティは、接続試行が成功したかどうかなど、イベントに関する特定の情報を含む情報オブジェクトです。
type プロパティ (netStatus イベントオブジェクト) の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
info | オブジェクトのステータスまたはエラー状態を記述するプロパティを持つオブジェクトです。 |
target | そのステータスを報告する NetConnection または NetStream オブジェクトです。 |
関連項目
| securityError | イベント |
flash.events.SecurityErrorEventflash.events.SecurityErrorEvent.SECURITY_ERROR| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
NetConnection.call() の呼び出しによって呼び出し元のセキュリティサンドボックスの外部にあるサーバーに接続しようとすると送出されます。
SecurityErrorEvent.SECURITY_ERROR 定数は、type プロパティ(securityError イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
| プロパティ | 値 |
|---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | セキュリティエラーを報告するネットワークオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
関連項目
videoURL に渡される変数と、ファイル名および場所が一致する FLV ファイルが必要です。この場合は、SWF ファイルと同じディレクトリにある Video.flv という名前の FLV ファイルです。
この例では、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 = "Video.flv";
private var connection:NetConnection;
private var stream:NetStream;
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 {
var stream:NetStream = new NetStream(connection);
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.client = new CustomClient();
var video:Video = new Video();
video.attachNetStream(stream);
stream.play(videoURL);
addChild(video);
}
}
}
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);
}
}
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/net/NetConnection.html