使用Shiro框架,登錄后返回跳轉前頁面


  突然發現博客又扔了好幾年了,今天想起來就記錄點問題。

  使用Shiro框架來進行權限驗證,想要登錄后跳轉回之前的鏈接。需要使用Shiro的SavedRequest。

  當跳轉到登錄頁面時,Shiro會調用WebUtils中的saveRequest方法,將當前的SavedRequest進行儲存。當登錄成功之后,通過getSavedRequest取得之前得數據。以下為具體實現:

  

// 參數 HttpServletRequest request
Subject user = SecurityUtils.getSubject();
try {
            user.login(token);
} catch (IncorrectCredentialsException e) {
......
}
SavedRequest savedRequest = WebUtils.getSavedRequest(request);
// 登錄前url
savedRequest.getRequestUrl();
// 取得url之后對SavedRequest進行清空
// 如果未使用接口方式,可以直接跳轉url並清空,使用WebUtils中的redirectToSavedRequest方法
WebUtils.getAndClearSavedRequest(request);

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM