关于JSP使用cookie在页面间传递数据的问题,没法传
我在A.jsp 中写了cookie的设置语句:Cookie cookie1=new Cookie("username",username);
Cookie cookie2=new Cookie("password",password);
cookie1.setMaxAge(2*60*60);
cookie2.setMaxAge(2*60*60);
response.addCookie(cookie1);
response.addCookie(cookie2);
分别是在界面上给username和password传递数据
然后,我在B.jsp中写了cookie的获取语句:Cookie[] cookies=request.getCookies();
for (int i=0;i<cookies.length;i++)
{
Cookie c=cookies[i];
if(c.getName().equals("username"))
username=c.getValue();
if(c.getName().equals("password"))
password=c.getValue();
}
可是,没有取出数据,为什么啊???我在A.jsp中试着System.out.println了一下cookie1,cookie2,都能正确取出名字和值啊
恳请高手请教!!!
------解决方案--------------------Cookie默认是对保存cookie的页面存的数据,要对整个网站保存Cookie用cookie1.setPath("/");
------解决方案--------------------1 a/b 2个jsp在一个目录吗? 跨域是不能访问的
2 response.addCookie 不能在页面前面已经有大量输出的时候用,请尽量将他提前
3 用firefox + firebug 调试一下,看看cookie到底是否生成