我正在尝试将请求从java.servlet.Filter内部重定向到页面“ /access_blocked.html”。但是,当我尝试使用response.redirect("/access_blocked.html")
进行操作时,我的文件“ access_blocked.html”正在下载到浏览器中,而不是被重定向。
仅供参考-请求来自浏览器的定位标记,并且服务器是使用嵌入了tomcat的spring boot设计的。
我也尝试过用request.getRequestDispatcher("/access_blocked.html").forward(request,response)
转发请求,但没有成功。
@Component
public class TransactionFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse res = (HttpServletResponse) response;
String url = req.getRequestURI();
if (url.startsWith("/sdks/")) {
res.sendRedirect("/access_blocked.html");
return;
} else {
chain.doFilter(request, response);
}
}
}
预期结果-在我的浏览器上,请求应重定向到“ /access_blocked.html”。