Cookie не отображается в запросе - PullRequest
0 голосов
/ 21 февраля 2019

Я работаю с Spring и у меня есть 2 контроллера, один из которых:

@RequestMapping("/meni/{id}")
    public String meni(@PathVariable String id, Model model, HttpServletRequest request, HttpServletResponse response){
 cookie = new Cookie("fake_session",id);
 cookie.setMaxAge(30*60);
 response.addCookie(cookie);
 return "meni";

}

Затем на статической HTML-странице 'meni' у меня есть запрос на публикацию, который идет по адресу:

@PostMapping("/index/{id}")
    public void post(@PathVariable String id,@RequestBody TestDTO testDTO, HttpServletResponse response, HttpServletRequest request){
         Cookie [] cookies = request.getCookies();
 for (int i=0;i<cookies.length;i++){
        Cookie cookie = cookies[i];
        if (cookie.getName().equals("fake_session")){
             System.out.println("Same cookie!");
                }


}

Однако, если никогда не будет передано.Если я дважды обращаюсь к контроллеру get, он распознает cookie, но если я иду к контроллеру почты, он не проходит.Все остальное в почтовом контроллере проходит гладко, все остальные задачи он выполняет хорошо.

Я перехожу к контроллеру Post, нажимая кнопку, которая вызывает функцию ajax в моем java-скрипте, который отправляет запрос POST на этот URL-адрес.Должен ли я что-то сделать с печеньем там?Я всегда обращаюсь к контроллеру GET, прежде чем перейти к контроллеру записи, чтобы создать файл cookie.

1 Ответ

0 голосов
/ 21 февраля 2019

Попробуйте использовать @CookieValue(value = "fake_session", defaultValue = "default") Spring MVC для доступа к набору данных в любом файле cookie HTTP в вашем методе post.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...