JavaServlet过滤器响应处理
请注意:如果这个问题的答案取决于实现,那么请假设Tomcat或Jetty的最新/现代版本 我读过的任何教程(如、和)都没有涉及到一些关于基础知识的细节 具体来说,有两种情况下,JavaServlet过滤器响应处理,java,servlet-filters,Java,Servlet Filters,请注意:如果这个问题的答案取决于实现,那么请假设Tomcat或Jetty的最新/现代版本 我读过的任何教程(如、和)都没有涉及到一些关于基础知识的细节 具体来说,有两种情况下,doFilter的行为似乎在任何地方都没有记录: 当doFilter基本上什么都不做时(不向ServletResponse打印任何内容,也不调用FilterChain#doFilter),我称之为无操作过滤器;及 当doFilter打印对ServletResponse的响应并调用FilterChain#doFilter时
doFilter
的行为似乎在任何地方都没有记录:
- 当
基本上什么都不做时(不向doFilter
打印任何内容,也不调用ServletResponse
),我称之为无操作过滤器;及FilterChain#doFilter
- 当
打印对doFilter
的响应并调用ServletResponse
时,我称之为触发并忘记过滤器FilterChain#doFilter
- 如果既没有调用
,也没有写入FilterChain#doFilter
,那么我假设过滤器会阻止请求,是吗ServletResponse
- 无论如何,在这个场景中,返回的HTTP状态码是什么
- 响应中返回的实体是什么?空的
- 当一个人同时写入
并调用ServletResponse
时会发生什么?例外?过滤器是否以某种方式缓存写入的响应,然后在上游过滤器/资源返回响应时附加到它FilterChain#doFilter
- 返回的HTTP状态码是什么
- 当抛出
时,是否会自动映射到HTTP 404,并使用异常的ServletException
响应实体getMessage()