wang
2024-04-18 b612510f2479cc7fc04fbf9c4982742bee9e2ceb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//package com.mes.security;
//
//import com.mes.utils.Result;
//import com.mes.utils.ResponseUtil;
//import org.springframework.data.redis.core.RedisTemplate;
//import org.springframework.security.core.Authentication;
//import org.springframework.security.web.authentication.logout.LogoutHandler;
//
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//
////退出处理器
//public class TokenLogoutHandler implements LogoutHandler {
//    private TokenManager tokenManager;
//    private RedisTemplate redisTemplate;
//
//    public TokenLogoutHandler(TokenManager tokenManager,RedisTemplate redisTemplate) {
//        this.tokenManager = tokenManager;
//        this.redisTemplate = redisTemplate;
//    }
//    @Override
//    public void logout(HttpServletRequest request, HttpServletResponse response, Authentication authentication) {
//        //1 从header里面获取token
//        //2 token不为空,移除token,从redis删除token
//        String token = request.getHeader("token");
//        if(token != null) {
//            //移除
//            tokenManager.removeToken(token);
//            //从token获取用户名
//            String username = tokenManager.getUserInfoFromToken(token);
//            redisTemplate.delete(username);
//        }
//        ResponseUtil.out(response, Result.success());
//    }
//}