Cookie问题,懂得进……

aa331730417 2012-05-12 04:01:54
我用struts2添加一个Cookie
贴代码:

System.out.println("开始存储");
Cookie loginName = new Cookie("loginName", userName);
loginName.setMaxAge(60 * 60 * 24); //24小时有效
response.addCookie(loginName);
System.out.println("存储结束");

Cookie[] cookies = request.getCookies();
for (int i = 0; i < cookies.length; i++) {
System.out.println(cookies[i].getName()+"="+cookies[i].getValue());
}

测试一:
我新增一个Cookie,立马查询Cookie发现没有该cookie的结果
我刷新action,结果就出来了
测试二
我再新增Cookie,再看结果,出现的是上一次的结果,我在jsp页面打印,情况一样
反复测试,结果:
总是慢一拍,结果总是上一次的,说明cookie添加后要等吗?

有人能解答吗?
...全文
113 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
宁波朱超 2012-05-13
  • 打赏
  • 举报
回复
这你到baidu上去搜一下吧。会有很多的
  • 打赏
  • 举报
回复
+++解释的很清楚了,request就像还钱,还的是上次的钱,response.addCookie()呢就像借钱.整个过程就是request.getCookies()还上次的钱,response.addCookie()又借给他一次钱.response.addCookie()借给他的钱要等下一次request.getCookies()才能还上.[Quote=引用 1 楼 的回复:]

没理解清楚response和request关于cookie生命周期的差异。

response中增加cookie,是将这个增加的信息发送给浏览器,这样浏览器才会将其加入本地cookie中,并在下一次请求服务器时同步提交给服务器。

request中的cookie,是浏览器请求服务器时同步提交过来的cookie值。
[/Quote]
古布 2012-05-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

没理解清楚response和request关于cookie生命周期的差异。

response中增加cookie,是将这个增加的信息发送给浏览器,这样浏览器才会将其加入本地cookie中,并在下一次请求服务器时同步提交给服务器。

request中的cookie,是浏览器请求服务器时同步提交过来的cookie值。
[/Quote]
++
MiceRice 2012-05-12
  • 打赏
  • 举报
回复
没理解清楚response和request关于cookie生命周期的差异。

response中增加cookie,是将这个增加的信息发送给浏览器,这样浏览器才会将其加入本地cookie中,并在下一次请求服务器时同步提交给服务器。

request中的cookie,是浏览器请求服务器时同步提交过来的cookie值。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧