之前在用boot版本时候未出现过这种情况,cloud版本auth模块下 TokenController.java

    @DeleteMapping("logout")
    public R<?> logout(HttpServletRequest request) {
        String token = SecurityUtils.getToken(request);
        if (StringUtils.isNotEmpty(token)) {
            String username = JwtUtils.getUserName(token);
            // 删除用户缓存记录
            AuthUtil.logoutByToken(token);
            // 记录用户退出日志
            sysLoginService.logout(username);
        }
        return R.ok();
    }

如果debug模式就能很明确的看到token为null,但还是进入了if判断里面,因为这个token是 "null"
if (StringUtils.isNotEmpty(token) && !"null".equals(token)) {
这样修改就好了   还不行的话只能清楚cookie了
Logo

一站式 AI 云服务平台

更多推荐