cookie中maxAge总是-1和tomcat设置编码方式

指定tomcat的URI编码方法

tomcat中conf文件夹下修改server.xml文件,在connector属性中添加语句

 URIEncoding="UTF-8"
 useBodyEncodingForURI="true"

 

利用cookie存储了登录名loinname字段并设置maxAge为2天,结果再次访问localhost:8080/a/1.do时.在相对于的servlet的request中,reques.getCookie()可以拿到相应的cookie,但是得到的maxAge总是-1.

原因:虽然在访问相应页面时,浏览器中的request会将本地的cookie带上,但是在带上的cookie中,它不会带上相应的maxAge.因为cookie中的maxAge过期时间是由浏览器来维护的,一旦某个cookie过期,则浏览器会自动将其清空,不需要服务端对其进行维护,所以调用reques.getCookie()方法总是-1;

posted @ 2016-03-23 00:11  三美元  阅读(1508)  评论(0编辑  收藏  举报