Difference between 0 and negative value for setMaxAge for Cookie

喜你入骨 提交于 2019-12-29 05:19:06

问题


From cookie docs for setMaxAge(int): http://docs.oracle.com/javaee/1.3/api/javax/servlet/http/Cookie.html#setMaxAge(int) Is there any difference between int = 0 and int = -ve? It says 0 deletes cookie. -ve value means cookie is not stored. Does that mean 0 deletes only from current browser session?


回答1:


I suggest you go read about cookies from a browser perspective. It's very interesting. Note that 'max-age' is the newer version of 'expires' and some browsers may not support it. (For example, IE6, IE7, and IE8 don't support max-age.)

0 means delete the cookie right now.

negative means preserve the cookie for a while. I suspect the scope is somewhat browser specific but it will not preserve the cookie across closing and reopening the browser.




回答2:


Setting setMaxAge to 0 will delete the cookie. Setting it to -1 will preserve it until the browser is closed.




回答3:


setMaxAge(int) as mentioned by Oracle setting max age 0 will delete the cookie instantly. While -1 will delete the cookie when the browser is closed.



来源:https://stackoverflow.com/questions/15932957/difference-between-0-and-negative-value-for-setmaxage-for-cookie

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!