1
我有一个MainRedirectController
,所有的请求和响应将从这个控制器重定向。如何从mainRedirect
方法发送请求参数到page1
方法,并从page1
方法发送响应参数到mainRedirect
方法?如何从弹簧控制器重定向?
public class MainRedirectController{
public ModelAndView mainRedirect(HttpServletRequest request, HttpServletResponse response) {
String page = ServletRequestUtils.getStringParameter(request, "page", null);
if(page.equals("page1")){
//redirect request to page1 controller and
//return reponse coming from page1 controller
}else if(....){
...
}
}
}
public class Page1Controller{
public ModelAndView page1(HttpServletRequest request, HttpServletResponse response) {
response.getOutputStream().print("{\"completed\": \"1\"}");
response.getOutputStream().flush();
return null;
}
}
我想知道为什么你想通过单个控制器?这是什么具体原因? –
这不起作用,您需要代理或在控制器中提供更好的映射。你不需要这么大的控制器来处理(这是“DispatcherServlet =”和“@ RequestMapping”注释的全部要点。) –
@ShaikElias我有一个客户端应用程序,用户可以通过这个应用程序来执行一些操作。问题是这个客户端应用程序没有身份验证信息,于是我创建了一个具有匿名访问的页面(MainRedirectController)。通过这个控制器,我需要将用户请求重定向到某些特定的控制器。 – hellzone