我想在我的应用程序中创建一个过滤器,以便在每次请求之前检测请求的页面是否存在。如果不存在,它将把用户转到错误页面。
如何检测该页面是否存在?
我需要一个带有过滤器但不使用 web.xml 标记方法的解决方案。
最佳答案
如果您没有身份验证,您可以。
- 制作一个
过滤器
- 使用HttpServletResponseWrapper并覆盖
sendError()
和setStatus()
- 通过
chain.doFilter(req, wrapper)
传递包装的响应 - 如果您在包装器中收到
sendError()
,请查看它是否为 404。 - 做出适当的回应。
您可能还必须重写 getOutputStream()
和 getWriter()
以避免在您有机会做事之前将响应刷新到客户端。
关于java - 如何制作过滤器以检测用户是否请求了未找到的页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4324176/