Flash は、AMF を介してサーバー上のサービス/スクリプトとどのように通信しますか?
データは TCP/IP 接続を介して転送されます。既存の HTTP 接続が使用される場合もあれば、AMF データ用に新しい TCP/IP 接続が開かれる場合もあります。HTTP または追加の TCP 接続が開かれると、ソケット インターフェイスが使用される可能性があります。AMF は間違いなくある種の TCP 接続を介して移動し、ソケット インターフェイスはそのような接続を開くための実質的に唯一の方法です。
転送される「データ」は、「整数」、「文字列」、「オブジェクト」などの ECMA スクリプト (Javascript(tm)) のデータ型で構成されます。
オブジェクトをバイナリにエンコードする方法の技術仕様については、Adobe が仕様を公開しています: AMF 3.0 Spec at Adobe.com
一般に、AMF を使用するクライアント/サーバー システムは次のように動作します。
- クライアントはユーザー インターフェイスを表示し、サーバーへの TCP 接続を開きます。
- サーバーはクライアントにデータを送信し、クライアントはユーザー インターフェイスを更新します。
- ユーザーがコマンドを実行すると、クライアントは TCP 接続を介してサーバーにデータを送信します。
- ユーザーが終了するまで、手順 2 ~ 3 を続けます。
たとえば、ユーザーが UI で「メールを送信」ボタンをクリックすると、クライアント コードは次のようになります。
public class UICommandMessage は my.CmdMsg を拡張します
{
public function UICommandMessage(action:String, arg: String)
{
this.cmd = アクション;
this.data = 文字列;
}
}
じゃあ後で:
UICommandMessage msg = new UICommandMessage("Button_Press", "Send_Mail");
server_connection.sendMessage(msg);
サーバーコードでは、サーバーは着信AMFオブジェクトの接続も監視しています。メッセージを受信し、適切な応答関数に制御を渡します。これを「メッセージを送信する」と呼びます。
あなたが達成しようとしていることについてより多くの情報があれば、より有用な詳細を提供できます.