1. 程式人生 > >整合spring cloud雲架構 - SSO單點登錄之OAuth2.0 登出流程

整合spring cloud雲架構 - SSO單點登錄之OAuth2.0 登出流程

代碼 我們 except logo cloud success color throw fff

上一篇我根據框架中OAuth2.0的使用總結,畫了一個根據用戶名+密碼實現OAuth2.0的登錄認證的流程圖,今天我們看一下logout的流程:

技術分享圖片

/** 
     * 用戶註銷 
     * @param accessToken 
     * @return 
     */  
@RequestMapping(value = "/user/logout", method = RequestMethod.POST)  
public ResponseVO userLogout(@RequestHeader(value = "accessToken", required = true) String accessToken,  
    @RequestHeader(value = "userId", required = true) Long userId) throws Exception{  
    OauthAccessToken oauthAccessToken = userMgrService.getOauthAccessToken(accessToken);  
    if(null == oauthAccessToken){  
        return UserResponseCode.buildEnumResponseVO(UserResponseCode.RESPONSE_CODE_OAUTH_ACCESSTOKEN_EMPTY, null);  
    }  
    //刪除OauthToken記錄  
    boolean result = userMgrService.revokeOauthToken(oauthAccessToken);  
    if(result){  
        return UserResponseCode.buildEnumResponseVO(UserResponseCode.RESPONSE_RETURN_CODE_SUCCESS, null);  
    }  
    return UserResponseCode.buildEnumResponseVO(UserResponseCode.RESPONSE_CODE_SYSTEM_ERROR, null);  
}  

我這裏只是簡單寫了一些登出的代碼,我們會在後面的文章中詳細貼出所有代碼供大家參考,而且會從創建數據庫,到執行操作的每一個流程記錄下來。

整合spring cloud雲架構 - SSO單點登錄之OAuth2.0 登出流程