[SPRING] web.xml url-pattern matcher에는 URL을 제외시키는 방법이 있습니까?
SPRINGweb.xml url-pattern matcher에는 URL을 제외시키는 방법이 있습니까?
CSS, JS 및 IMAGE 파일을 제외하고 내 사이트의 URL에 액세스 할 때마다 호출해야하는 필터를 작성했습니다. 그래서 제 정의에서 저는 다음과 같이하고 싶습니다 :
<filter-mapping>
<filter-name>myAuthorizationFilter</filter-name>
<url-pattern>NOT /css && NOT /js && NOT /images</url-pattern>
</filter-mapping>
이 작업을 수행 할 여지가 있습니까? 내가 찾을 수있는 유일한 문서는 / *
최신 정보:
Mr.J4mes가 제공 한 답변과 비슷한 것을 사용하여 끝냈습니다.
private static Pattern excludeUrls = Pattern.compile("^.*/(css|js|images)/.*$", Pattern.CASE_INSENSITIVE);
private boolean isWorthyRequest(HttpServletRequest request) {
String url = request.getRequestURI().toString();
Matcher m = excludeUrls.matcher(url);
return (!m.matches());
}
해결법
-
==============================
1.나는 당신이 이것을 시도 할 수 있다고 생각한다.
나는 당신이 이것을 시도 할 수 있다고 생각한다.
@WebFilter(filterName = "myFilter", urlPatterns = {"*.xhtml"}) public class MyFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { String path = ((HttpServletRequest) request).getServletPath(); if (excludeFromFilter(path)) chain.doFilter(request, response); else // do something } private boolean excludeFromFilter(String path) { if (path.startsWith("/javax.faces.resource")) return true; // add more page to exclude here else return false; } }
-
==============================
2.URL 패턴 매핑은 제외를 지원하지 않습니다. 이것은 서블릿 스펙의 한계입니다. Mr.J4mes가 게시 한 수동 해결 방법을 시도 할 수 있습니다.
URL 패턴 매핑은 제외를 지원하지 않습니다. 이것은 서블릿 스펙의 한계입니다. Mr.J4mes가 게시 한 수동 해결 방법을 시도 할 수 있습니다.
-
==============================
3.아마도 당신은 css, js 등을 위해 또 다른 "빈"필터를 선언 할 수 있고 다른 필터 매핑 전에 놓을 수 있습니다.
아마도 당신은 css, js 등을 위해 또 다른 "빈"필터를 선언 할 수 있고 다른 필터 매핑 전에 놓을 수 있습니다.
-
==============================
4.보안 통제를 액세스 제어에 사용했습니다. 코드보기 :
보안 통제를 액세스 제어에 사용했습니다. 코드보기 :
<security-constraint> <web-resource-collection> <web-resource-name>Unsecured resources</web-resource-name> <url-pattern>/resources/*</url-pattern> <url-pattern>/javax.faces.resource/*</url-pattern> </web-resource-collection> </security-constraint>
나는이 튜토리얼을 따른다.
from https://stackoverflow.com/questions/8658949/in-a-web-xml-url-pattern-matcher-is-there-a-way-to-exclude-urls by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] JSP에서의 Spring MVC 요청 URL (0) | 2019.01.29 |
---|---|
[SPRING] Spring 3.2-mvc를 사용하여 큰 이미지를 업로드 / 스트리밍하는 방법 (0) | 2019.01.29 |
[SPRING] clone 또는 BeanUtils.copyProperties를 사용해야하며 이유는 무엇입니까? (0) | 2019.01.29 |
[SPRING] 스프링 MVC 웹 응용 프로그램 : 응용 프로그램 컨텍스트가 두 번 시작됩니다. (0) | 2019.01.29 |
[SPRING] Spring : 커맨드 라인에서 하나의 application.property 덮어 쓰기 (0) | 2019.01.29 |