• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>FLASH AS 编程>AS高手篇>文章内容
  • Blue框架的基本教程一:连接服务器
  • 来源:sujun.org 作者:弃天笑 2007-10-21 【
下载Blue框架的服务端和客户端的包,接着我们就看其中的使用例子
(下载类库:类库

在使用Blue之前,建议先去看看服务端和客户端的api 
服务器的主要看Server,Application,StartEndListenter,Client
客户端看一个ConnectJavaServer类的文档就够了
当然,你直接看例子也很容易熟悉的

首先来看flash客户端怎么连接到服务器上去的
先看客户端的as代码

//导入ConnectJavaServer类
import org.sujun.blue.net.ConnectJavaServer;
//实例化一个网络连接类
var netConnect:ConnectJavaServer = ConnectJavaServer.getConnectJavaServer();
//客户端连接成功或者失败后,会调用该事件
netConnect.onConnect = function(msg:String)
{
    trace("msg:" + msg);
    if(msg == "connect success")
    {
        trace("连接成功");
    }
    else
    {
        trace("连接失败");
    }
}

//连接服务器
netConnect.connect("localhost",5588,"soda","admin123");

代码就很简单啦,说得很明白,当然,首先是要把那个客户端的包放进去

接下来看服务端的代码的MainFrame.java类
首先是一个启动服务器的,这个类调用了blue的里网络服务
import org.sujun.blue.net.Server;
import org.sujun.blue.global.Application;

public class MainFrame 
{
    public static void main(String[] args)
    {
        //注册响应客户端连接和端开处理类
        Application.addStartEndListenter(new StartAndEnd());
        Server ser = new Server();
        //设置端口
        ser.setPort(5588);
        //启动服务
        ser.startServer();
    }
}

这个类很简单,注意到代码中的这一行,
//注册响应客户端连接和端开处理类
Application.addStartEndListenter(new StartAndEnd());
查看blue提供的相应api就知道了,Application.addStartEndListenter这个方法是注册一个相应客户端连接与关闭的方法,需要的参数是StartEndListenter接口的实现类
StartEndListenter接口只定义了两个默认的方法
/**
     * 客户端刚连接成功时调用该方法
     * (默认带一个参数方法)
     * @param client 包含客户端信息的Client实例
     */
    public void onConnet(Client client)
    {
    }
    
    /**
     * 客户端意外与服务器断开连接时响应该方法
     * (默认带一个参数方法)
     * @param client
     */
    public void thunderboltCut(Client client)
    {
    }

这两个默认的方法,blue框架都已经默认地实现了,但是如果需要在客户端登陆或者退出的时候传递参数的时候,就需要对这两个方法进行多态了。下面是我们例子的响应客户端连接端开的代码
StartAndEnd.java
import org.sujun.blue.remote.Client;
import org.sujun.blue.global.Application;
import org.sujun.blue.response.StartEndListenterAdapter;


public class StartAndEnd extends StartEndListenterAdapter
{
    //客户端连接时调用,提供了3个参数,注意Client client这个参数是必须的
    public void onConnet(Client client,String name, String pass)
    {
        //判断用户名是正确
        if(name.equals("soda") && pass.equals("admin123"))
        {
            //成功连接
            Application.setStart(true,"SUCCESS");
        }
        else
        {
            //连接失败
            Application.setStart(false,"FAIL");
        }
        System.out.println("用户连接程序完毕");
    }
    
    //客户端端开时调用
    public void thunderboltCut(Client client)
    {
        System.out.println("服务器意外关闭时调用!没有参数的");
    }
}

源代码下载:例子代码






上一篇:[as hack技术]垃圾回收机强制执行   下一篇:Blue框架的基本教程二:客户端调用服务器的方法
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)