1. 程式人生 > >用戶登錄攔截器

用戶登錄攔截器

oid RR override col 用戶登錄 response 需要 ride red

/**
 * 用戶登錄攔截器
 * @author Administrator
 *
 */
public class LoginInterceptor implements HandlerInterceptor {
    
    /**
     * 前處理,執行 handler 之前執行此方法( handler 就是方法 )
     */
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
            
throws Exception { //1.從 cookie 中取 token //判斷 token 是否存在 //2.如果沒有 token,說明是未登錄狀態。跳轉到 sso 系統登錄頁面。用戶登錄成功後,跳轉到當前請求的 url //response.sendRedirect("http://localhost:8080/sso?redirec="+ request.getRequestURL());//不同的工程跳轉,需要 redirect,將當前 url 傳過去 //3.如果取到 token,需要調用 sso 系統的服務,根據 token 取得用戶信息
//4.如果 sso 服務沒取到用戶信息。說明登錄過期,跳轉到 sso 系統登錄頁面。用戶登錄成功後,跳轉到當前請求的 url //5.如果 soo 服務取到用戶信息。則把用戶信息放入 request 中 return true; } /** * handler 執行之後,返回 ModelAndView 之前 執行 */ @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView)
throws Exception { // TODO Auto-generated method stub } /** * 完成處理,返回 ModelAndView 之後 執行 * 可以再次處理異常 */ @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { } }

用戶登錄攔截器