我正在尝试创建应在每个请求上调用的过滤器,并检查用户是否已被授权。我的实现就像教科书一样。
@WebFilter("/*")
public class MiddleWareAuth implements Filter {
@Override
public void destroy() {
// ...
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("hi");
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
String xHeader = ((HttpServletRequest)request).getHeader("Authorization");
System.out.println("I am here");
System.out.println(xHeader);
}
}
然而令我感到困扰的是,我不知道应该在哪里注册过滤器,让春天知道它应该通过它提出每个请求。
我读到我应该在web.xml文件中使用<filter>
标记,但是我的项目没有这样的文件。
我正在2017年的intelij上运行我的项目。
我应该让Spring知道注册我的过滤器吗?
感谢您的帮助!