public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
response.setContentType("text/html");
Cookie[] cookies = request.getCookies();
if(null != cookies) {
for(Cookie cookie : cookies) {
out.println(cookie);
out.println("<br>");
}
} else {
//Set the Cookie in response, so that you can retrieve this in subsequent requests
Cookie PegaRULES = new Cookie("PegaRULES", "This is PegaRULES Cookie");
response.addCookie(PegaRULES);
}
Привет всем,
Я выше кода, в идеале он должен сделать следующее
для 1-го запроса, так как не было бы PegaRULES печенье, он должен добавить один в ответ
из второго запроса на подопечных, так же печенье должно быть напечатано в браузере (я имею в виду ИмяКласса @ хэш печенья, как Cookie @ Ac35c)
Мои наблюдения
Для первого запроса, пустой страницы (как и ожидалось), а также в ответ на печенье присутствует
для второго запроса, Cookie @ af33d (скажем)
для всех последующих запросов, его не должны меняться (т.е. тот же Cookie @ af33d должен быть напечатан в браузере) Но я вижу, что значение изменилось при каждом последующем запросе (каждый раз обновляю браузер, чтобы запускать последующие запросы)
FYI, я использую Fiddler для отслеживания запросы и ответы
и я не вижу никакого файла cookie в последующих ответах от второго запроса в палатах (и это как ожидается). Меня больше беспокоит значение, напечатанное в браузере, которое меняется каждый раз, когда я обновить браузер (т. е. запустить новый запрос)
PS: То же самое происходит с IE и Google Chrome
Почему каждый запрос должен получить свежий экземпляр файла cookie? Если вы посмотрите на существующую логику, он должен отправить cookie только один раз и его работу таким образом. Я вижу, что только один файл cookie отправляется как часть первого ответа, а последующие ответы не содержат никаких ... Я говорил об этом конкретном случае, не должно быть никакого нового экземпляра? – JavaHopper