2016-10-12 6 views
0

Есть ли способ перенаправления с ответом в Spring MVC Controller? Использование ModelAndView с ResponseBody только перенаправляет с пустым телом.Перенаправление с ответом в контроллере весны

@RequestMapping(method = RequestMethod.POST) 
@ResponseBody 
public ModelAndView redirectWithResponse(@RequestParam("redirect_url") String redirectUrl, 
             @RequestParam("data") String data) { 

    MyJSONResponse response = new MyJSONResponse(data); 

    ModelAndView modelAndView = new ModelAndView("redirect:"+redirectUrl); 
    modelAndView.addObject(response); 
    return modelAndView; 

} 

ответ

1

вы должны скопировать их в RedirectAttributes:

public ModelAndView redirectWithResponse(@RequestParam("redirect_url") 
    String redirectUrl, @RequestParam("data") String data, 
    RedirectAttributes redir) { 
    ... 

    MyJSONResponse response = new MyJSONResponse(data); 

    ModelAndView modelAndView = 
      new ModelAndView("redirect:" + redirectUrl); 
    redir.addFlashAttribute("object", response); 
    return modelAndView; 
    ... 
} 

область вспышки атрибуты запрос, они будут выживать редирект, но будут удалены после использования

Смежные вопросы