Netty+SpringBoot+FastDFS+MUI实现聊天App详解(二)
本节主要讲解聊天App tigerChat中关于用户信息处理,以及文件服务器FastDFS的相关操作。
包含以下内容:
(1)注册与登录功能
(2)文件服务器的配置
(3)上传用户头像
(4)设置用户昵称
(5)用户二维码的生成与上传
注册与登录功能
自定义一个工具类IMoocJSONResult,是后端响应前端的数据结构。
包含下面三个属性:
// 响应业务状态
private Integer status;
// 响应消息
private String msg;
// 响应中的数据
private Object data;
提供错误响应与正常响应的方法:
public static IMoocJSONResult ok(Object data) {
return new IMoocJSONResult(data);
}
public static IMoocJSONResult ok() {
return new IMoocJSONResult(null);
}
public static IMoocJSONResult errorMsg(String msg) {
return new IMoocJSONResult(500, msg, null);
}
public static IMoocJSONResult errorMap(Object data) {
return new IMoocJSONResult(501, "error", data);
}
public static IMoocJSONResult errorTokenMsg(String msg) {
return new IMoocJSONResult(502, msg, null);
}
public static IMoocJSONResult errorException(String msg) {
return new IMoocJSONResult(555, msg, null);
}
创建UserController方法,写入进行注册于登录处理的registOrLogin接口。
【0】前端传入Users对象,首先判断前端传入的Users对象是否为空。
【1】然后通过userService的queryUsernameIsExist方法根据传入的用户名在数据库中进行查询。
【1.1】若该用户存在则进行登录,通过userService的queryUserForLogin方法判断前端传入的用户名与密码试凑匹配,若匹配则登录成功,否则登录失败。
【1.2】若该用户不存在则记性注册,根据前端传入的信息构建Users对象,通过userService的saveUser将其保存入数据库中。
【2】最后构造UsersVO对象,返回给前端。
注意:密码需要使用MD5工具类进行加密后再保存到数据库中。
/**
* @Description: 用户注册/登录
*/
@PostMapping("/registOrLogin&#