cookie的作用,客户端的cookie关闭标签页以后重新登陆网站时怎么保证还是登录状态

&&完Springmvc用户注销退出登录功能疑问Springmvc框架用户登录后记录到Session中&
@Controller
@RequestMapping({ &/user& })
@SessionAttributes({ GlobalConstants.USER_SESSION })
public class UserController {
@Autowired
private UserService userS
@ResponseBody
@RequestMapping(&/login&)
public String login(ModelMap model, String email, String password) {
User user = userService.findUserByEmail(email);
SessionStruct session = new SessionStruct();
session.setUser(user);
model.addAttribute(GlobalConstants.USER_SESSION, session);
return &&;
@RequestMapping(value = &/loginout&, method = RequestMethod.GET)
public String loginOut(HttpServletRequest request,@ModelAttribute(GlobalConstants.USER_SESSION) SessionStruct session) {
// 清除session
Enumeration&String& em = request.getSession().getAttributeNames();
while (em.hasMoreElements()) {
request.getSession().removeAttribute(em.nextElement().toString());
request.getSession().removeAttribute(GlobalConstants.USER_SESSION);
request.getSession().invalidate();
String path = request.getContextPath();
// 拼接跳转页面路径
String basePath = request.getScheme() + &://& + request.getServerName() + &:& + request.getServerPort() + path + &/&;
System.out.println(request.getSession().getAttribute(GlobalConstants.USER_SESSION));
return &redirect:& + baseP
我的和牛哥的不同之处可能是session是通过注解注入的,牛哥的应该是通过request拿的吧?&&& &&li &欢迎 &c:out value=&${sessionScope.USER_SESSION.user.username }&&&/c:out&&/li&&清楚之后username依然能够在页面显示。。。5个牛币所有回答列表(3)&LV4给你分享下最代码的登录和退出代码片段:登陆成功代码片段:
session.setAttribute(GlobalConstants.SESSION_LOGIN_USER_NAME, user);退出登录代码片段:
User user = (User) session.getAttribute(GlobalConstants.SESSION_LOGIN_USER_NAME);
session.removeAttribute(GlobalConstants.SESSION_LOGIN_USER_NAME);
response.sendRedirect(&/&);如果有cookie的操作,则需要登录的时候写入cookie,代码如下:
Cookie cookie = new Cookie(GlobalConstants.COOKIE_NAME_ZUIDAIMA_ID,Security.encryptUserId(userId));
cookie.setPath(&/&);
cookie.setDomain(&.&);
cookie.setMaxAge(60 * 60 * 24 * 365 * 10);退出的时候需要删除该cookie
Cookie cookie = new Cookie(GlobalConstants.COOKIE_NAME_ZUIDAIMA_ID,Security.encryptUserId(userId));
cookie.setPath(&/&);
cookie.setDomain(&.&);
cookie.setMaxAge(0);注意:删除客户端cookie只需要设置cookie的max age值为0,并且必须给客户端response时set cookie才会删除。最佳答案great&UE&LV1session.clear() & 好像有这个方法吧等等完等完完等完等等完等相关问答完等完完等等完等等完等完最近浏览暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级扫描二维码关注最代码为好友"/>扫描二维码关注最代码为好友查看: 7953|回复: 33
关闭IE浏览器后每次都要重新登录!跟cookie作用域有关系吗?
本帖最后由 朱张义 于
13:13 编辑
关闭IE浏览器后每次都要重新登录,DZ论坛和其它站都能保存住帐号。
首先,我安装的模版,和后台-工具-文件校验,更新缓存,都没问题。
如果是IE浏览器的问题,我清理缓存,包括IE设置“退出时删除浏览历史记录”、cookie、保存的密码,DZ论坛都能保存住帐号自动登录。
不删除浏览器cookie,我的网站也不能保存住帐号自动登录。
用其他浏览器都能自动登录的,这个问题跟cookie作用域有关系吗?如果有关系,那该如何操作?
那就试下设或不设cookie作用域
关闭IE浏览器后每次都要重新登录!跟config_global.php文件的cookie作用域有关系吗?
你去掉下那个ip检查看看。
hewentao1989 发表于
你去掉下那个ip检查看看。
不懂,如何操作?谢谢
关闭IE浏览器后每次都要重新登录!跟config_global.php文件的cookie作用域有关系吗?
浏览器的问题
本帖最后由 朱张义 于
23:15 编辑
真的吗?如果是IE浏览器的问题,那为何DZ官方就能保存住帐号,清理过浏览器缓存,也能保存住帐号。
huainei 发表于
浏览器的问题
如果是IE浏览器的问题,那为何DZ官方就能保存住帐号,浏览器清理缓存也能保存住帐号。
IE的问题可能性比较大
Powered by2013年5月 总版技术专家分月排行榜第一
2016年7月 总版技术专家分月排行榜第二2016年3月 总版技术专家分月排行榜第二2015年12月 总版技术专家分月排行榜第二2014年8月 总版技术专家分月排行榜第二2014年7月 总版技术专家分月排行榜第二2013年6月 总版技术专家分月排行榜第二
2014年11月 PHP大版内专家分月排行榜第三2014年6月 PHP大版内专家分月排行榜第三2014年4月 PHP大版内专家分月排行榜第三2014年2月 PHP大版内专家分月排行榜第三2013年11月 PHP大版内专家分月排行榜第三
2014年11月 PHP大版内专家分月排行榜第三2014年6月 PHP大版内专家分月排行榜第三2014年4月 PHP大版内专家分月排行榜第三2014年2月 PHP大版内专家分月排行榜第三2013年11月 PHP大版内专家分月排行榜第三
2014年11月 PHP大版内专家分月排行榜第三2014年6月 PHP大版内专家分月排行榜第三2014年4月 PHP大版内专家分月排行榜第三2014年2月 PHP大版内专家分月排行榜第三2013年11月 PHP大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。前端在线资源
本文地址:
HTML5虽未来到其鼎盛时期,但这并不妨碍我们在实际项目中渐进使用HTML5的一些特性。就我所做的项目而言,应用的HTML5相关特性有:data-自定义属性、placeholder、以及email类型input文本框。上周新上线的会员中心,自己又应用了HTML5相关内容——HTML5 localStorage本地存储,这里简单分享下,希望能触动一下大家的小小神经。
二、实例展示
实际在线的页面访问,如果不是会员,还需要注册。烦那!所以自己就把其高保真独立出来,做了个HTML版本的demo页面。
您可以狠狠地点击这里:
进入demo页面,您可以看到左侧一个高高的(如果你是首次进入)的垂直菜单栏,长相如下:
点击次级标题栏(灰色渐变的标题栏)会有展开收起的动作。例如点击首页标题栏“订单中心”,对应列表项收起,然后你刷新页面,该列表项依旧处于收起状态。如下图:
三、实现探究
有意思!怎么玩的呢?这里卖个关子,先看看京东商城的做法。
我们这里的垂直菜单栏应该是参考京东商城个人中心的菜单栏设计的;京东的记录用户展开收起细则的做法是使用cookie,所有浏览器都使用cookie,一个关键字为myjd的cookie,如下截图所示(FireFox6下):
这是很OK的做法,客户端记录一些可以丢失的数据,且大小不大的时候,cookie是首选,毕竟,所有的浏览器都鸟它。
我个人对cookie并没有什么好感,一是大小限制,貌似4K左右,而是IE6浏览器下每个域名下好像还有个数限制。我生性自由之人,最受不了限制了。好在我们迎来了HTML5,其中有个很犀利实用的东东,就是localStorage本地存储,有5M大小,而且IE浏览器从IE8开始就已经支持了。
所说IE6~7浏览器尚不支持,但这并不影响我们在实际项目中使用。此话怎讲,IE6~7浏览器依旧采用传统的cookie保持信息,而其他浏览器就使用HTML5的本地存储功能。这里不同浏览器不同做法的成本是很低的,尤其在某些JS库下(因为使用参数,格式等都一致)。
上面所说的某些JS库之一就是MooTools库,因为我所从事的项目都与基于MooTools库的,因此,使用本地存储的成本就小些。MooTools库自身就携带读写cookie的功能,且参数个数,使用与localStorage本地存储一致。
具体实现如下:
我们每次点击一个标题栏,都要把它的显示状态记录。例如,放在一个数组中,然后存储之,代码如下(假设我们已经记录了各标题栏状态为数组arrDisplay):
var arrDisplay = [0, 1, 1, 1];
//存储,IE6~7 cookie 其他浏览器HTML5本地存储
if (window.localStorage) {
localStorage.setItem("menuTitle", arrDisplay);
Cookie.write("menuTitle", arrDisplay);
当我们每次load页面的时候,就要将相对应的数据读出来。如下:
var strStoreDate = window.localStorage? localStorage.getItem("menuTitle"): Cookie.read("menuTitle");
需要注意的是:虽然我们存储的是数组,但是,实际上存储的的是数组字符化后的字符串(Cookie和localStorage都是),因此,我们在处理strStoreDate的时候,一定要当作字符串处理,类似下面:
strStoreDate.split(",").each(function(display, index) {
//根据存储的display触发相对应的动作
以上就是用户操作行为本地存储的核心code,如果您要查看完整代码,demo页面[右键→查看源代码]即可。
有好东西不用干嘛呢?总不能因为一粒老鼠屎把一锅红烧肉都倒掉吧,总不能因为某一个人犯了点事就把他九族都灭了吧。不是常说要拥抱变化,拥抱未来吗?只有这样,才能加速提升我们整个前端届的向前发展,不至于总是滞后于国外N年……所以,我们要大胆进取,用于创新,在实际的项目中,积极应用CSS3或是HTML5的新特性,新技术。无论是你的个人喜好,还是确实对于项目有所帮助,积极do it!整个行业的发展就是你推动的!
感谢阅读,欢迎交流。
原创文章,转载请注明来自[]
本文地址:
(本篇完)
相关文章 (0.588) (0.368) (0.264) (0.264) (0.264) (0.251) (0.227) (0.211) (0.148) (0.132) (RANDOM - 0.024)
标签: , , , , ,
赞助商推荐():
想学到点真东西?
如果你有1~3年前端开发经验,不妨
想找个师兄入门前端?不妨
想快速入门前端?
热门总排行}

我要回帖

更多关于 客户端获取cookie 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信