FilterRegistrationBean для захвата всех запросов - PullRequest
0 голосов
/ 06 января 2019

Я хочу использовать FilterRegistrationBean, чтобы передать все запросы, сгенерировать фильтр.

@Bean
public FilterRegistrationBean<JwtApplicationFilter> JWTApiFilter() {
    FilterRegistrationBean<JwtApplicationFilter> registration = new FilterRegistrationBean<JwtApplicationFilter>();
    registration.setFilter(new JwtApplicationFilter());
    //In case you want the filter to apply to specific URL patterns only
    registration.addUrlPatterns("/xxx");
    registration.addUrlPatterns("/xxx/**");
    registration.addUrlPatterns("/base/");
    registration.addUrlPatterns("/xxx/*");
    registration.addUrlPatterns("/");
    registration.addUrlPatterns("/**");
    return registration;
}

Я пробовал все эти шаблоны и более, у меня есть только один контроллер с /base -

@RestController
@RequestMapping("/base/")
public class BaseController {
   /***
}

А в моем приложении. Свойства -

 server.servlet.context-path =/xxx

JwtApplicationFilter -

public class JwtFilterLogin extends GenericFilterBean {

    private FilterHandlers loginHandler;

    private static final Logger LOGGER = LoggerFactory.getLogger(JwtFilterLogin.class);
    public static final String HEADER_AUTH = "Authorization";

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
            throws IOException, ServletException {

        HttpServletRequest httprequest = (HttpServletRequest) request;
        HttpServletResponse httpresponse = (HttpServletResponse) response;

        LOGGER.info("JwtFilterLogin for URI=" + httprequest.getRequestURI()); //not logging or stops at debug

    }

}

1 Ответ

0 голосов
/ 06 января 2019

Мне не хватало registration.addUrlPatterns("/*");, чтобы соответствовать всем запросам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...