This commit is contained in:
Redkale
2018-07-09 11:10:15 +08:00
parent f115934499
commit e3ddbe609c
3 changed files with 62 additions and 4 deletions

View File

@@ -0,0 +1,40 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package org.redkale.test.rest;
import org.redkale.convert.json.JsonFactory;
/**
*
* @author zhangjx
*/
public class LoginBean {
private String account = "";
private String password = "";
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return JsonFactory.root().getConvert().convertTo(this);
}
}

View File

@@ -5,7 +5,7 @@
*/
package org.redkale.test.rest;
import org.redkale.service.Service;
import org.redkale.service.*;
/**
* 简单的定义UserService接口
@@ -18,4 +18,8 @@ public class UserService implements Service {
public UserInfo current(String sessionid) {
return new UserInfo();
}
public RetResult<UserInfo> login(LoginBean bean) {
return new RetResult<>(new UserInfo());
}
}

View File

@@ -10,6 +10,8 @@ import java.util.*;
import java.util.concurrent.CompletableFuture;
import javax.annotation.Resource;
import org.redkale.net.http.*;
import org.redkale.service.RetResult;
import org.redkale.test.rest.*;
/**
*
@@ -23,15 +25,27 @@ public class ChatWebSocket extends WebSocket<Integer, Object> {
@Resource
protected ChatService service;
@Resource
protected UserService userService;
protected UserInfo user;
@Override
protected CompletableFuture<String> onOpen(final HttpRequest request) {
//随机创建一个sessionid
return CompletableFuture.completedFuture(request.getSessionid(true));
LoginBean bean = request.getJsonParameter(LoginBean.class, "bean");
RetResult<UserInfo> ret = userService.login(bean);
if (ret.isSuccess()) { //登录成功
user = ret.getResult();
//随机创建一个sessionid
return CompletableFuture.completedFuture(request.getSessionid(true));
} else { //登录失败, 返回null
return send("{\"onLoginFailMessage\":" + ret + "}").thenApply(x -> null);
}
}
@Override
protected CompletableFuture<Integer> createUserid() {
return CompletableFuture.completedFuture(service.createUserid());
return CompletableFuture.completedFuture(user.getUserid());
}
/**