springcloud集成Oauth2权限项目-退出登录并清除redis中的access_token(十四)

当用户退出的时候,清除redis中token,其实很简单

我直接在oauth服务中新建一个接口

springcloud集成Oauth2权限项目-退出登录并清除redis中的access_token(十四)_第1张图片

@RestController
@RequestMapping("/authentication")
public class UserController {

    @Autowired
    @Qualifier("consumerTokenServices")
    private ConsumerTokenServices consumerTokenServices;

    /**
     * 退出登录,并清除redis中的token
     **/
    @GetMapping("/removeToken")
    public Boolean removeToken(String accessToken){
        return consumerTokenServices.revokeToken(accessToken);
    }
}

访问这个链接的时候带上token,就可以注销登录了

启动全部项目

测试:

springcloud集成Oauth2权限项目-退出登录并清除redis中的access_token(十四)_第2张图片

访问上面的链接,会转发到oauth服务,然后清除token,链接上面不能加bearer 前缀

http://localhost:9999/oauth/authentication/removeToken?accessToken=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaWNlbnNlIjoidmNsb3VkIiwiYXVkIjpbInZjbG91ZCJdLCJ1c2VyX25hbWUiOiJoZWxsbyIsInNjb3BlIjpbInNjb3BlIl0sImV4cCI6MTU3MjQxNjY1MCwidXNlcklkIjoxLCJqdGkiOiIyNzYwZGJlYS02OTk4LTRiZmQtYWYwYi1hNjkzNGRiOTlkZGIiLCJjbGllbnRfaWQiOiJjbGllbnRfaWQifQ.n8gxTqj9wSDgJA1zdlHq2OH2wqq4KPDocFQkuaz1PtI

项目地址:https://github.com/James-Pan0525/vcloud.git

你可能感兴趣的:(oauth2)