AbstractAuthenticationProcessingFilter
을 확장하는 필터가 있습니다. 내가 아래에있는 보안 설정 클래스에서필터가 Spring 부트 프로젝트에서 두 번 호출됩니다.
는
@Override
protected void configure(final HttpSecurity http) throws Exception {
http.addFilterBefore(getMyFilter(), BasicAuthenticationFilter.class);
http.addFilterAfter(getMyFilter2(), MyFilter.class);
http.csrf().disable().authorizeRequests().antMatchers(HttpMethod.OPTIONS, "/**").permitAll();
}
private MyFilter getMyFilter() {
return new MyFilter(properties, apiConsumer);
}
나는 우체부과 REST 엔드 포인트를 호출
는MyFilter
GET의
doFilter
방법은 두 번 안타. 두 번 모두
ServletRequest
에
requestedSessionId
과
strippedServletPath
이 있습니다.
그러나 MyFilter2
은 GenericFilterBean
으로 확장되며 한 번만 호출됩니다.
필터의 실행 순서는 MyFilter.doFilter
입니다 ->MyFilter2.doFilter
->MyFilter.doFilter
어떤 이유가 될 것이며, 어떻게 근본 원인을 찾을 수 있습니까?
. 해당 주석을 제거하면 한 번만 조회됩니다. – Harshana