首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

amf相干

2012-08-29 
amf相关ruby服务端config.ru# rack-amf# http://adampetrie.com/working-with-amf-in-actionscript-3# htt

amf相关
ruby服务端

config.ru

# rack-amf# http://adampetrie.com/working-with-amf-in-actionscript-3# http://help.adobe.com/zh_CN/as3/dev/WS9b644acd4ebe5999-2734bf3c124372a52ff-8000.htmlrequire 'rack/amf'use Rack::AMFclass User  attr_accessor :usernameendclass TestService  def sayHello    'Hello'  end  def getUser    u = User.new    u.username = "user"    u  end    def add(num1, num2)    num1 + num2  endendRack::AMF::Environment.register_service 'TestService', TestService.newRocketAMF::ClassMapper.define do |m|  m.map :as => 'User', :ruby => 'User'endrun lambda {|env| [200, { 'Content-Type' => 'text/plain', 'Content-Length' => '16' }, ["Rack AMF gateway"] ] }


rackup


flash客户端

NetConnectionExample.as
// http://adampetrie.com/working-with-amf-in-actionscript-3// http://help.adobe.com/zh_CN/as3/dev/WS9b644acd4ebe5999-2734bf3c124372a52ff-8000.htmlpackage{import flash.display.Sprite;import flash.events.NetStatusEvent;import flash.net.NetConnection;import flash.net.Responder;public class NetConnectionExample extends Sprite  {private var _netConnection:NetConnection;public function NetConnectionExample() {var remotingGateway:String  = "http://localhost:9292";_netConnection = new NetConnection();_netConnection.addEventListener(NetStatusEvent.NET_STATUS, connectionHandler);_netConnection.connect(remotingGateway);//Make the call_netConnection.call("TestService.sayHello", new Responder(sayHelloSuccess, erroneousResult));_netConnection.call("TestService.getUser", new Responder(getUserSuccess, erroneousResult));_netConnection.call("TestService.add", new Responder(addSuccess, erroneousResult), 1, 2);}private function connectionHandler(ev:NetStatusEvent):void{if(ev.info.code == "NetConnection.Call.Failed"){trace("Unable to find gateway");}}private function sayHelloSuccess(obj:Object):void{trace(obj);}private function getUserSuccess(obj:Object):void{trace(obj.username);}private function addSuccess(obj:Object):void{trace(obj);}private function erroneousResult(obj:Object):void{trace("Call Failed");}}}

热点排行