从闪存介质服务器调用响应程序类

时间:2011-05-23 03:11:16

标签: actionscript-3

我有一个问题是调用闪存介质服务器中定义的异步函数中的Flash客户端中定义的响应方法。

我的客户代码,

  

私有函数handleResp   (结果:对象){trace(“得到的   数字“+ result.number);}

     

netConnection.call(“getnum”,new   响应者(handleResp));

我的服务器代码,

  

Application.handleServerResp.onResult   =功能(结果)   {

     

// ??????如何调用客户端的handleResp

}

  

>

     

Client.prototype.getnum = function()   {

     

//无法获取号码,请拨打另一个号码   服务器(中央一号)的号码

     

centralNetConnection.call   (“getnumNOW”,新的响应者   (handleServerResp)); }

1 个答案:

答案 0 :(得分:0)

基本上,Responder类用于处理服务器方法的返回值,因此不能异步使用它。 你可以这样做:

创建客户响应方法(它应该是公共的,否则FMS无法访问它)。

    public function handleResp (result:Object) { trace ("get the number " + result.number); };

设置NetConnection对象的客户端。

    netConnection.client = this; // if your responder function is in this scope, otherwise set that object what contains your function.

调用服务器端方法。

    netConnection.call ("getnum", null); // set null as resopnder

在服务器端的responder方法中,调用客户端方法。

    Application.handleServerResp.onResult = function (result) 
    {
        clientOBJ.call( "handleResp", null, result ); // you don't use responder, so pass null as second parameter
    }

希望这有帮助。

干杯,

Tamas Gronas