Servlet代码:
`System.out.println("---------------MyTestPath:"+request.getContextPath());
RequestDispatcher rd = getServletContext().getRequestDispatcher("/index.jsp");
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0L);
response.addCookie(new Cookie("ssspath",request.getContextPath()));
rd.forward(request, response);
index.jsp代码:
document.write(document.cookie);`
Tomcat 6:
后台打印:---------------MyTestPath:/testW
页面显示:ssspath="/testW"; JSESSIONID=B75860DB6FBA61EA5C95FF73AC1802BF
Tomcat 7:
后台打印:---------------MyTestPath:/testW
页面显示:ssspath=/testW
问题1:为什么6下面ssspath有双引号?
问题2:为什么7下面的Cookie里边没有JSESSIONID
谢谢。
使用 RequestDispatcher从 Servlet 直接到 JSP ,这都是在服务器端完成的。
也就是说这个cookie是在送到客户端浏览器之前被JSP显示出来的
你试试在 JSP 上放一个链接,指向另外一个 JSP,然后在另外的那个JSP把cookie显示出来
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。