初步实现登录返回token

This commit is contained in:
648540858
2023-03-13 09:45:00 +08:00
parent ec90519c90
commit 95688e400b
11 changed files with 378 additions and 89 deletions

View File

@@ -1,6 +1,7 @@
package com.genersoft.iot.vmp.vmanager.user;
import com.genersoft.iot.vmp.conf.exception.ControllerException;
import com.genersoft.iot.vmp.conf.security.JwtUtils;
import com.genersoft.iot.vmp.conf.security.SecurityUtils;
import com.genersoft.iot.vmp.conf.security.dto.LoginUser;
import com.genersoft.iot.vmp.service.IRoleService;
@@ -21,6 +22,8 @@ import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import javax.security.sasl.AuthenticationException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@Tag(name = "用户管理")
@@ -43,7 +46,7 @@ public class UserController {
@Operation(summary = "登录")
@Parameter(name = "username", description = "用户名", required = true)
@Parameter(name = "password", description = "密码32位md5加密", required = true)
public LoginUser login(@RequestParam String username, @RequestParam String password){
public LoginUser login(HttpServletRequest request, HttpServletResponse response, @RequestParam String username, @RequestParam String password){
LoginUser user = null;
try {
user = SecurityUtils.login(username, password, authenticationManager);
@@ -52,6 +55,9 @@ public class UserController {
}
if (user == null) {
throw new ControllerException(ErrorCode.ERROR100.getCode(), "用户名或密码错误");
}else {
String jwt = JwtUtils.createToken(username, password);
response.setHeader(JwtUtils.getHeader(), jwt);
}
return user;
}