Как Redirect передает значение в Spring Framework? - PullRequest
0 голосов
/ 28 июня 2018

Я очень новичок в области Spring Framework и веб-разработки.

Я был удивлен, что Spring может добавить атрибуты в свой ответ перенаправления, который идет на сторону клиента.

Насколько мне известно, если сервер дает ответ, позволяющий клиенту выполнить перенаправление, клиент выполняет другой запрос, и содержащиеся в нем значения из предыдущего запроса или ответа пропадают.

Но ясно, что весной этого не происходит. Как это может произойти?

1 Ответ

0 голосов
/ 28 июня 2018

Существует два способа отправки параметров с перенаправлением весной.

1.Параметры будут видны в URL.

@RequestMapping(method = RequestMethod.PUT, produces = "text/html")
    public String update(@Valid User user, BindingResult bindingResult, Model uiModel, HttpServletRequest httpServletRequest) {
            uiModel.addAttribute("parameter1", "value1");
            uiModel.addAttribute("parameter2", "value2");
            return "redirect:/" + "redirectionURL";
    }

2. Параметры будут скрыты в URL.

@RequestMapping(method = RequestMethod.PUT, produces = "text/html")
public String update(@Valid User user, BindingResult bindingResult, Model uiModel, HttpServletRequest httpServletRequest,  RedirectAttributes redirectAttributes) {
        redirectAttributes.addFlashAttribute("parameter1", "value1");
        redirectAttributes.addFlashAttribute("parameter2", "value2");
        return "redirect:/" + "redirectionURL";
}
...