SmartFoxServer学习(4)--登录
前期准备工作前面都已做好, 就不在多说, 直接功能实现了!
SmartFoxServer的登录分Guest Login 和Custom Login 两种, 默认为Guset Login
Guset Login
1. 只需要用户名, 甚至用户名都不需要, 密码就更不需要了, 直接发送LoginRequest 即可, 不做任何验证
2. 不会触发服务端的USER_LOGIN 事件
Gustom Login
1. 需要用户名, 需要密码, 验证通过后才算登录成功
2. 会触发服务端的USER_LOGIN 事件
Custom Login 开启方式
登录后台, 进入 Zone Configurator, 选中要设置的Zone, 双击进入编辑模式, 在General tab页找到Use Custom Login, 将其设置为开启状态.
下面是Custom Login实现
客户端实现
1. 添加监听事件
1 //add events 2 _sfs.AddEventListener(SFSEvent.CONNECTION, onConnection); 3 _sfs.AddEventListener(SFSEvent.CONNECTION_LOST, onConnectionLost); 4 5 _sfs.AddEventListener(SFSEvent.LOGIN, onLogin); 6 _sfs.AddEventListener(SFSEvent.LOGIN_ERROR, onLoginError);
2. 连接成功后发送登录请求
1 ISFSObject paras = SFSObject.NewInstance(); 2 paras.PutUtfString("test", "登录参数"); 3 // 参数1: 用户名 4 // 参数2: 密码 5 // 参数3: 登入的Zone名称 6 // 参数4: 额外参数 7 IRequest req = new LoginRequest(inputUsername.text, inputPassword.text, "GameZone", paras); 8 _sff.Send(req);