springmvc的拦截器,怎么设置不拦截的url

如题所述

代码示例

// ä¸éœ€è¦æ‹¦æˆªçš„URL
private static final String[] EXCLUDED_URL = {"/login.html", "/doLogin.html", "/register.html", "/doRegister.html"};

/**
 * è¯·æ±‚之前的处理方法<br />
 *
 * @param request  è¯·æ±‚request
 * @param response å“åº”response
 * @param handler  å¤„理器
 * @return å¤„理的结果
 * @throws Exception æŠ›å‡ºçš„异常
 */
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)
        throws Exception {
    boolean flag = false;
    String requestedUrl = request.getRequestURI().toString();
    // æ£€æŸ¥è¯·æ±‚çš„URL是否在过滤列表里
    for (String url : EXCLUDED_URL) {
        if (requestedUrl.contains(url)) {
            flag = true;
            break;
        }
    }

    if (!flag) {
        User user = (User) request.getSession().getAttribute(Constants.USER_CONTEXT);
        if (user != null) {
            flag = true;
        } else {
            throw new AuthorizationException();
        }
    }
    return flag;
}
温馨提示:答案为网友推荐,仅供参考
相似回答