<em id="hanht"></em>

    <dd id="hanht"></dd>

    <em id="hanht"><acronym id="hanht"></acronym></em>
    
    <button id="hanht"></button>
    <rp id="hanht"><object id="hanht"><blockquote id="hanht"></blockquote></object></rp><em id="hanht"></em>

    首頁 > 設計 > WEB開發 > 正文

    21.5.處理Flash Remoting響應

    2023-08-14 18:53:56
    字體:
    來源:轉載
    供稿:網友
    問題
    我想接收Flash Remoting方法返回值
    解決辦法
    使用Responder 對象
    討論
    第21.1章討論了如何使用NetConnection對象的調用Flash Remoting方法,call( )方法的第二個參數指定處理函數, 如果為null 則不接收遠程方法返回, 如果要處理響應, 可使用flash.net.Responder 對象。

    Responder 構造器可傳入兩個引用參數,分別為處理返回值和處理異常:
    +展開
    -ActionScript
    var responder:Responder = new Responder(onResult, onError);

    當返回結果處理函數被調用時,會傳進一個為返回值的參數:
    +展開
    -ActionScript
    private function onResult(returnValue:Datatype):void {
    }

    異常處理函數會傳進一個包含錯誤信息的對象。

    下面的例子調用Flash Remoting方法getAverages( ),使用trace( ) 顯示,getAverages( ) 方法返回一個關聯數組,包含兩個屬性:flash 和actionscript:
    +展開
    -ActionScript
    package {
    import flash.net.NetConnection;
    import flash.net.Responder;
    public class Example {
    private var _connection:NetConnection;
    public function Example( ) {
    _connection = new NetConnection( );
    _connection.connect("http://www.rightactionscript.com/flashremoting/
    gateway.php");
    var responder:Responder = new Responder(onResult, onError);
    _connection.call("FlashSurvey.getAverages", responder);
    }
    private function onResult(result:Object):void {
    trace(result.flash + " " + result.actionscript);
    }
    private function onError(error:Object):void {
    trace(error.description);
    }
    }
    }
    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表