是否可以在没有调用response.sendRedirect(...)方法的情况下发送重定向?

时间:2014-01-25 07:40:39

标签: java servlets

在servlet中,我希望客户端浏览器重定向到一个新的URL,response对象已经被Location设置为头文件到lib的新URL,但我无法得到在我的代码中重定向url(没有response.getHeader(...),所以我的问题是,是否可以在没有调用response.sendRedirect(...)方法的情况下发送重定向?怎么样?

2 个答案:

答案 0 :(得分:3)

您可以在响应正文中发送重定向。

类似......

response.getWriter().println("<html><head><META http-equiv=\"refresh\" content=\"0;URL=http://google.com\"></head></html>\");

答案 1 :(得分:1)

只需将HttpServletResponse的状态代码设置为302,将Location标头设置为您想要的URI

response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY); // or SC_FOUND
response.setHeader("Location", "some uri");