【发布时间】:2010-01-21 00:34:33
【问题描述】:
我想在 cookie 中添加两个值并检索它们。我正在这样做,但我只得到第一个值,而不是第二个。
Cookie c = new Cookie("a", a);
c.setMaxAge(60);
response.addCookie(c);
Cookie b = new Cookie("d", d);
b.setMaxAge(5 * 60);
response.addCookie(b);
阅读时:
Cookie cookies[] = getRequest().getCookies();
Cookie myCookie = null;
if (cookies != null) {
for (int i = 0; i < cookies.length; i++) {
log.info("test ;;;"+cookies[i].getName());
}
}
这只会返回一个数据。
【问题讨论】:
-
返回哪些数据?从上面的代码来看,在这种情况下它应该返回 cookie 的名称。
-
不,它只是重新调整我的“a”cookie数据而不是第二个
-
作为故障排除提示,请尝试切换您首先分配的 cookie。这应该可以帮助您确定“d”cookie 是否消失,因为第二个 cookie 总是被丢弃,或者特别是“d”有什么问题。我怀疑前一种情况,原因在下面我的回答中详述。