パッケージ | mx.rpc.http |
クラス | public dynamic class HTTPMultiService |
継承 | HTTPMultiService AbstractService Proxy |
サブクラス | HTTPMultiService |
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
<mx:HTTPMultiService>
タグを使用して、http 操作のコレクションを表します。各々に URL、メソッド、パラメーターおよび戻り型があります。
HTTPMultiService タグで URL や method などの属性を設定すると、個々の操作タグで設定される値のデフォルトとして使用できます。HTTPMultiService の URL は http 操作タグで設定される相対 URL の基本 URL(つまり、プレフィックス)として使用されます。各 http 操作には send()
メソッドがあり、このメソッドが指定の URL への HTTP 要求を作成し、HTTP 応答が返されます。
HTTP 要求にデータを設定するのに使用する指定の URL にパラメーターを渡せます。contentType プロパティでは通信データの形式(HTTP フォームエンコーディングや XML など)を判別するために使用される MIME タイプを指定します。
直列化フィルターを使用して JSON のようなカスタム resultFormat を実装することもできます。サーバーベースのプロキシサービスを経由しない場合は、HTTP GET メソッドまたは POST メソッドだけを使用できます。 useProxy
プロパティを true に設定し、サーバーベースのプロキシサービスを使用する場合は、HTTP の HEAD、OPTIONS、TRACE および DELETE メソッドも使用できます。
メモ:HTTPService クラスとは異なり、HTTPMultiService クラスでは request
プロパティは定義されていません。
メモ:HTTPService と同じく、ソフトウェアの制約により、HTTPMultiService でプロキシを使用せずに GET を使用した場合、ユーザーフレンドリーなエラーメッセージは生成されません。
デフォルトの MXML プロパティoperationList
関連する API エレメント
プロパティ | 定義元 | ||
---|---|---|---|
baseURL : String
相対 URL を計算するときに、HTTPService オブジェクトが使用する必要のある URL です。 | HTTPMultiService | ||
channelSet : ChannelSet
サービスが使用する ChannelSet へのアクセスを提供します。 | AbstractService | ||
concurrency : String
サービス内の同一操作に対する複数の呼び出しの処理方法を示す値です。 | HTTPMultiService | ||
contentType : String = "application/x-www-form-urlencoded"
サービス要求のコンテンツタイプです。 | HTTPMultiService | ||
destination : String
サービスの宛先です。 | AbstractService | ||
headers : Object
サードパーティーのエンドポイントに送信されるカスタム HTTP ヘッダーです。 | HTTPMultiService | ||
makeObjectsBindable : Boolean = true
true の場合、返されたオブジェクトでは UI コントロールへのデータバインディングがサポートされます。 | HTTPMultiService | ||
managers : Array
マネージャープロパティは、このサービスの動作を修正するデータマネージャーのリストを格納します。 | AbstractService | ||
method : String = "GET"
操作についてメソッドが明示的に設定されていない場合に、要求を送信するための HTTP メソッドです。 | HTTPMultiService | ||
operationList : Array
これはインスタンスのデフォルトプロパティとして役立ちます。操作のセットを MXML の HTTPMultiService タグの直接の子として定義できます。 | HTTPMultiService | ||
operations : Object
通常、Operations 配列は MXML タグを使ってサービスを作成した場合に、MXML コンパイラーによってのみ設定されます。 | AbstractService | ||
requestTimeout : int
送信メッセージの要求タイムアウト時間(秒単位)に対するアクセスを提供します。 | AbstractService | ||
resultFormat : String
HTTP 呼び出しから返された結果を非直列化する方法を示す値です。 | HTTPMultiService | ||
serializationFilter : SerializationFilter 明示的に設定しないすべての操作で使用されるデフォルトの serializationFilter | HTTPMultiService | ||
showBusyCursor : Boolean
true の場合、サービスの実行中にビジーカーソルが表示されます。 | HTTPMultiService | ||
useProxy : Boolean
Flex のプロキシサービスを利用するかどうかを指定します。 | HTTPMultiService |
メソッド | 定義元 | ||
---|---|---|---|
新しい HTTPService を作成します。 | HTTPMultiService | ||
サービスのネットワーク接続を切断して、保留されている要求のすべての応答側を削除します。 | AbstractService | ||
指定された名前の Operation を返します。 | AbstractService | ||
サービスを初期化するために呼び出されます。 | AbstractService | ||
ユーザーを宛先からログアウトします。 | AbstractService | ||
サーバー側で Data Services を使用している場合にサービスがアクセスする宛先の資格情報を設定します。 | AbstractService | ||
サーバー側で Data Services を使用している場合に、リモートのサードパーティーエンドポイント(プロキシを介した Web サービスやカスタムアダプターを介したリモートオブジェクトなど)にアクセスするユーザーの認証に使用されるユーザー名とパスワードです。 | AbstractService |
イベント | 概要 | 定義元 | ||
---|---|---|---|---|
HTTPMultiService 呼び出しが失敗したときに送出されます。 | HTTPMultiService | |||
チャンネルがメッセージの送信を試みる前にエラーがスローされない限り、HTTPMultiService 呼び出しが実行されると、invoke イベントが開始されます。 | HTTPMultiService | |||
HTTPMultiService 呼び出しが正常に結果を返したときに送出されます。 | HTTPMultiService |
baseURL | プロパティ |
public var baseURL:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
相対 URL を計算するときに、HTTPService オブジェクトが使用する必要のある URL です。 これには、設定時に URL の先頭に追加されるプレフィックスが含まれます。デフォルトは null です。この場合、SWF の URL は相対 URL を計算するのに使用されます。
concurrency | プロパティ |
concurrency:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
サービス内の同一操作に対する複数の呼び出しの処理方法を示す値です。ここで設定した concurrency 設定は、concurrecny を指定しない操作に対して使用されます。concurrency 設定が直接設定されている個々の操作では、ここで設定された値は無視されます。デフォルト値は multiple
です。 使用できる値は次のとおりです。
multiple
:既存の要求はキャンセルされません。返されるデータは開発者が責任を持って、イベントストリームを慎重に管理することで整合性を確保する必要があります。 これがデフォルト値です。single
:処理では一度に 1 つの要求のみが認められ、複数の要求を送信すると処理が失敗します。last
:要求を送信すると、既存の要求がすべてキャンセルされます。
実装
public function get concurrency():String
public function set concurrency(value:String):void
contentType | プロパティ |
public var contentType:String = "application/x-www-form-urlencoded"
サービス要求のコンテンツタイプです。 デフォルトは application/x-www-form-urlencoded
で、名前と値のペアを持つ通常の HTTP POST のような要求を送信します。application/xml
は要求を XML として送信します。
headers | プロパティ |
public var headers:Object
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
サードパーティーのエンドポイントに送信されるカスタム HTTP ヘッダーです。複数のヘッダーを同じ名前で送信する必要がある場合は、値を配列として指定します。これらのヘッダーはすべての操作に送信されます。操作レベルでヘッダーを設定することもできます。
makeObjectsBindable | プロパティ |
public var makeObjectsBindable:Boolean = true
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
true
の場合、返されたオブジェクトでは UI コントロールへのデータバインディングがサポートされます。つまり、PropertyChangeEvents は、プロパティ値が変更されるときに送信されます。これは makeObjectsBindable プロパティが明示的に設定されていない操作のデフォルト値です。
method | プロパティ |
public var method:String = "GET"
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
操作についてメソッドが明示的に設定されていない場合に、要求を送信するための HTTP メソッドです。有効な値は GET
、POST
、HEAD
、OPTIONS
、PUT
、TRACE
および DELETE
です。 小文字は大文字に変換されます。 デフォルト値は GET
です。
operationList | プロパティ |
resultFormat | プロパティ |
resultFormat:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
HTTP 呼び出しから返された結果を非直列化する方法を示す値です。 この値は次の項目に基づいて決定します。
- XML または名前と値のペアのどちらが返されるのか。
- 結果にアクセスする方法。結果にはオブジェクト、テキストまたは XML としてアクセスできます。
デフォルト値は object
です。 使用できる値は次のとおりです。
object
:返される値は XML であり、ActionScript オブジェクトのツリーとして解析されます。 これはデフォルトの設定です。array
:返される値は XML で、ActionScript オブジェクトのツリーとして解析されますが、トップレベルのオブジェクトが配列でない場合、新しい配列が作成されて結果が最初のアイテムとして設定されます。 makeObjectsBindable が true の場合、配列は ArrayCollection 内にラップされます。xml
:返される値は XML です。これは ActionScript XMLnode オブジェクト内のリテラル XML として返されます。flashvars
:返される値は、アンパサンドで区切られた名前と値のペアを含むテキストで、ActionScript オブジェクトに解析されます。text
:返される値はテキストで、未処理のまま保持されます。e4x
:返される値は XML で、ActionScript XML オブジェクト内のリテラル XML として返されます。XML(E4X)式用の ECMAScript を使ってアクセスできます。
実装
public function get resultFormat():String
public function set resultFormat(value:String):void
serializationFilter | プロパティ |
public var serializationFilter:SerializationFilter
明示的に設定しないすべての操作で使用されるデフォルトの serializationFilter
showBusyCursor | プロパティ |
useProxy | プロパティ |
useProxy:Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
Flex のプロキシサービスを利用するかどうかを指定します。 デフォルト値は false
です。true
を指定しない場合(Flex サーバーを介して要求をプロキシしない場合)は、プレーヤーがターゲット URL に確実に到達できるようにする必要があります。 また、useProxy
プロパティが false
に設定されている場合、services-config.xml ファイルで定義された宛先を使用することはできません。
デフォルト値: false。
実装
public function get useProxy():Boolean
public function set useProxy(value:Boolean):void
HTTPMultiService | () | コンストラクター |
public function HTTPMultiService(baseURL:String = null, destination:String = null)
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
新しい HTTPService を作成します。サービスで相対 URL による送信を行う場合は、完全な URL を決定するための基礎となる baseURL
を指定できます。例えば、Application.application.url
と指定します。
baseURL:String (default = null ) — 相対 URL を計算するときに、HTTPService が使用する必要のある URL です。
| |
destination:String (default = null )
|
fault | イベント |
mx.rpc.events.FaultEvent
プロパティ FaultEvent.type =
mx.rpc.events.FaultEvent.FAULT
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
HTTPMultiService 呼び出しが失敗したときに送出されます。
FAULT イベントタイプです。イベントオブジェクトの各プロパティには次の値が設定されています。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | true。関連付けられたトークンの responder.fault メソッドから preventDefault() を呼び出すと、サービスまたは処理がこのイベントを送出しなくなります。 |
currentTarget | イベント処理を行うイベントリスナーの定義用オブジェクトを表します。 例えば、イベントリスナーの登録に myButton.addEventListener() を使用すると、myButton の値は currentTarget となります。 |
fault | このイベントの原因についての詳細が含まれる Fault オブジェクトです。 |
message | このイベントに関連付けられたメッセージです。 |
target | イベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。 イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。 |
token | メソッドの呼び出しを表すトークン。Asynchronous Completion Token パターンで使用されます。 |
invoke | イベント |
mx.rpc.events.InvokeEvent
プロパティ InvokeEvent.type =
mx.rpc.events.InvokeEvent.INVOKE
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
チャンネルがメッセージの送信を試みる前にエラーがスローされない限り、HTTPMultiService 呼び出しが実行されると、invoke イベントが開始されます。
INVOKE イベントタイプです。イベントオブジェクトの各プロパティには次の値が設定されています。
プロパティ | 値 |
---|---|
bubbles | false |
token | メソッドの個々の呼び出しを表すトークン。 Asynchronous Completion Token パターンで使用されます。 |
cancelable | true |
currentTarget | イベント処理を行うイベントリスナーの定義用オブジェクトを表します。 例えば、イベントリスナーの登録に myButton.addEventListener() を使用すると、myButton の値は currentTarget となります。 |
message | このイベントに関連付けられた要求メッセージです。 |
target | イベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。 イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。 |
result | イベント |
mx.rpc.events.ResultEvent
プロパティ ResultEvent.type =
mx.rpc.events.ResultEvent.RESULT
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
HTTPMultiService 呼び出しが正常に結果を返したときに送出されます。
RESULT イベントタイプです。イベントオブジェクトの各プロパティには次の値が設定されています。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | true。関連付けられたトークンの responder.result メソッドから preventDefault() を呼び出すと、サービスまたは処理がこのイベントを送出しなくなります。 |
currentTarget | イベント処理を行うイベントリスナーの定義用オブジェクトを表します。 例えば、イベントリスナーの登録に myButton.addEventListener() を使用すると、myButton の値は currentTarget となります。 |
message | このイベントに関連付けられたメッセージです。 |
target | イベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。 イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。 |
result | RPC 呼び出しが返す結果です。 |
token | メソッドの個々の呼び出しを表すトークン。 Asynchronous Completion Token パターンで使用されます。 |
Tue Jun 12 2018, 10:34 AM Z