支持登录返回值中携带token

This commit is contained in:
648540858
2023-03-15 22:56:47 +08:00
parent 5fab97cf7e
commit efbc3a31c0
5 changed files with 35 additions and 26 deletions

View File

@@ -22,7 +22,6 @@ public class AnonymousAuthenticationEntryPoint implements AuthenticationEntry
@Override
public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException e) {
System.err.println(e.getMessage());
String jwt = request.getHeader(JwtUtils.getHeader());
JwtUser jwtUser = JwtUtils.verifyToken(jwt);
String username = jwtUser.getUserName();

View File

@@ -19,6 +19,8 @@ public class LoginUser implements UserDetails, CredentialsContainer {
*/
private User user;
private String accessToken;
/**
* 登录时间
@@ -99,4 +101,11 @@ public class LoginUser implements UserDetails, CredentialsContainer {
}
public String getAccessToken() {
return accessToken;
}
public void setAccessToken(String accessToken) {
this.accessToken = accessToken;
}
}

View File

@@ -42,7 +42,9 @@ public class UserController {
@GetMapping("/login")
@PostMapping("/login")
@Operation(summary = "登录")
@Operation(summary = "登录", description = "登录成功后返回AccessToken 可以从返回值获取到也可以从响应头中获取到," +
"后续的请求需要添加请求头 'access-token'或者放在参数里")
@Parameter(name = "username", description = "用户名", required = true)
@Parameter(name = "password", description = "密码32位md5加密", required = true)
public LoginUser login(HttpServletRequest request, HttpServletResponse response, @RequestParam String username, @RequestParam String password){
@@ -57,28 +59,11 @@ public class UserController {
}else {
String jwt = JwtUtils.createToken(username, password);
response.setHeader(JwtUtils.getHeader(), jwt);
user.setAccessToken(jwt);
}
return user;
}
// @GetMapping("/logout")
// @PostMapping("/logout")
// @Operation(summary = "登出")
// public LoginUser logout(){
// LoginUser user;
// try {
// user = SecurityUtils.login(username, password, authenticationManager);
// } catch (AuthenticationException e) {
// throw new ControllerException(ErrorCode.ERROR100.getCode(), e.getMessage());
// }
// if (user == null) {
// throw new ControllerException(ErrorCode.ERROR100.getCode(), "用户名或密码错误");
// }else {
// String jwt = JwtUtils.createToken(username, password);
// response.setHeader(JwtUtils.getHeader(), jwt);
// }
// return user;
// }
@PostMapping("/changePassword")
@Operation(summary = "修改密码")