• 抛开BlazeDS,自定义flex RPC


      在做一款webgame,一开始项目使用BlazeDS与后台进行通信。用下来发现BlazeDS做了太多的事情,效率不是很高,所以考虑了一下,自己实现了一个类似于BlazeDS的RPC框架

      客户端flex代码

    public class NetAMF extends NetConnection
    {
       ...sendData()
       ...getData()
    }
    代码
    public function sendData(funName:String,funData:Object=null):void
    {
       ..............

        
    var myRequest:URLRequest=new URLRequest();
        myRequest.method
    =URLRequestMethod.POST;
        myRequest.data
    =realByte;
        myRequest.url
    =serverURL+funName;
        myRequest.contentType
    ="application/x-amf";
        
        
    var myLoader:ZTURLLoader=new ZTURLLoader();
        myLoader.dataFormat
    =URLLoaderDataFormat.BINARY;
        myLoader.addEventListener(Event.COMPLETE,getData);
        ...........
        myLoader.sendDataInfo
    =funName;
        myLoader.load(myRequest);
    }



    public 
    function getData(e:Event):void
    {
         
    var funName:String=(e.currentTarget as ZTURLLoader).sendDataInfo as String
         
    var bytes:ByteArray=ZTURLLoader(e.currentTarget).data as ByteArray;
         
    var obj=bytes.readObject();
         
    var myEvent:ServerEvent=new ServerEvent(SUCCESS,obj,ServerID)
         
    this.dispatchEvent(myEvent);
    }

    服务端通过Servlet读取数据并写回给客户端。 

  • 相关阅读:
    前端了解即可:postman(接口测试)的使用
    ES6——TDZ(暂时性死区)
    Centos自动安装openssh及openssl脚本并隐藏版本号
    ELK学习链接
    Centos7 中使用搭建devpi并且使用Supervisor守护进程
    ansible系列
    iperf3网络测试工具
    Centos6.9下PXE安装centos 7
    CentOS 6.9下PXE+Kickstart无人值守安装操作系统
    django学习篇
  • 原文地址:https://www.cnblogs.com/51cto/p/1721277.html
Copyright © 2020-2023  润新知