高人解答,在response里修改cookie

dwys0343 2007-04-12 01:02:30
是这样的request.getSession()会创建一个保存JSESSIONID的cookie加入到response里面。我想修改这个cookie,可response没有提供接口啊?!
有办法吗?
...全文
560 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
beyond429 2007-04-12
  • 打赏
  • 举报
回复
Cookie cookiename = new Cookie("ewayusername", username);
Cookie cookiepwd = new Cookie("ewayuserpwd", password);
int vt = 0;
if(valitime.equals("year"))
vt = 0x1e13380;
if(valitime.equals("month"))
vt = 0x278d00;
if(valitime.equals("weekday"))
vt = 0x93a80;
if(valitime.equals("day"))
vt = 0x15180;
if(valitime.equals("hour"))
vt = 3600;
cookiename.setMaxAge(vt);
cookiepwd.setMaxAge(vt);
response.addCookie(cookiename);
response.addCookie(cookiepwd);
dwys0343 2007-04-12
  • 打赏
  • 举报
回复
问题是我们用的服务器是oc4j,
不像tomcat,在第一次调用request.getSession()方法的时候就把cookie加入到response里面了,我们自己加的cookie比它加得晚,所以可以用cookie1.setMaxAge(0);删除tomcat建得cookie.
而oc4j,我调试了一下,发现它可能是在servlet的doGet()跑完了以后才将cookie加入到response里面的,是在我们自己加的cookie之后,所以就不可能在第一次返回浏览器的时候把这个cookie干掉,第二次浏览器访问服务器的时候还会返回这个cookie
dwys0343 2007-04-12
  • 打赏
  • 举报
回复
在tomcat下
String aspId = "yahoo";
HttpSession session = request.getSession();
//JSESSIONID 是否是从浏览器传过来的
boolean sessionFlag = request.isRequestedSessionIdFromURL() || request.isRequestedSessionIdFromCookie();

//如果不是从浏览器过来的,也就是新生成的
if(!sessionFlag){
//获取HttpSessionId
String sessionId = session.getId();

//用原JSESSIONID的值,修改path后,生成新的Cookie
Cookie cookie1 =new Cookie("JSESSIONID",sessionId);
String path1 = request.getContextPath();
cookie1.setMaxAge(0);
cookie1.setPath(path1);
response.addCookie(cookie1);


Cookie cookie =new Cookie("JSESSIONID",sessionId);
String domain = request.getServerName();
String path = request.getContextPath()+"/"+aspId;
cookie.setDomain(domain);
cookie.setPath(path);
response.addCookie(cookie);
}

加入的第一个cookie用于删除服务器自己创建的cookie,第二个cookie是我想加入到浏览器的
可以达到目的
dwys0343 2007-04-12
  • 打赏
  • 举报
回复
我想再cookie没到浏览器的时候修改
frilly 2007-04-12
  • 打赏
  • 举报
回复
你 request.getSession() 获取cookie, 修改后,
再 response.addCookie(new Cookie(// 修改后的cookie)); 不就可以了吗?

81,091

社区成员

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

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