首先我们还是先看下接口文档,所谓的安全退出其实就是将token从Redis当中删除,由于现在跨域还没学,参数中的callback就先不用管。
看了说明文档我们便知道该怎么做了,在taotao-sso-interface工程的UserLoginService接口中添加一个方法,如下图所示。
下面我们到taotao-sso-service工程的UserLoginServiceImpl类中实现logout方法,如下图所示。
Service层的代码编写完后,我们再来完成Controller层代码的编写,在taotao-sso-web工程的UserController类中添加一个方法,如下图所示。
现在我们开始进行测试,由于在taotao-sso-interface工程中新添加了一个方法,因此我们需要重新打包taotao-sso-interface工程到本地maven仓库,然后我们依次启动taotao-sso和taotao-sso-web工程。为了测试,我们还需要重新发送下登录请求,获取一个新的token(原来登录的token已经过期了,设置的过期时间是30分钟),如下图所示。
我们使用新的token来测试安全退出,在浏览器地址栏中输入
这时我们再尝试通过该token来获取用户信息,在浏览器地址栏中输入
看了说明文档我们便知道该怎么做了,在taotao-sso-interface工程的UserLoginService接口中添加一个方法,如下图所示。
下面我们到taotao-sso-service工程的UserLoginServiceImpl类中实现logout方法,如下图所示。
Service层的代码编写完后,我们再来完成Controller层代码的编写,在taotao-sso-web工程的UserController类中添加一个方法,如下图所示。
现在我们开始进行测试,由于在taotao-sso-interface工程中新添加了一个方法,因此我们需要重新打包taotao-sso-interface工程到本地maven仓库,然后我们依次启动taotao-sso和taotao-sso-web工程。为了测试,我们还需要重新发送下登录请求,获取一个新的token(原来登录的token已经过期了,设置的过期时间是30分钟),如下图所示。
我们使用新的token来测试安全退出,在浏览器地址栏中输入
http://localhost:8088/user/logout/6bcf02e5-e71f-470e-b56b-2800c4cfd0b1
进行访问,结果如下图所示。
这时我们再尝试通过该token来获取用户信息,在浏览器地址栏中输入
http://localhost:8088/user/token/6bcf02e5-e71f-470e-b56b-2800c4cfd0b1
进行访问,结果如下图所示,显示token已过期(从登录到现在还不到30分钟),这说明我们的安全退出没问题了。