ssm项目session使用及其作用域问题

栏目: 编程语言 · 发布时间: 6年前

内容简介:这篇文章主要介绍了ssm项目session使用及其作用域问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

这两天由于自己在前端用到ajax发起异步更新请求,发现ajax会暴露后端的接口地址,这个问题当然是避免不了的啦,前端都是明文。可怜于是就在百度、谷歌、QQ群里各种查询各种提问题,都说只能通过安全验证去解决问题,作为新手第一个选择的当然是session啦,网上还有token验证、shrio框架等,有兴趣的朋友可以网上搜寻教程学习。

session是存在服务器的一种缓存机制,可以验证用户是否已经登录过了。我把自己学到的写上来,可以让新手少走弯曲路,直接上代码~

第一、在SSM的登录接口参数里需要加入 HttpServletRequest request 请求,用来获取请求携带的session

第二、登录接口内代码进行session设置,HttpSession session = request.getSession(true); //这句是获取session,true是表示如果没有则新建一个session,可以不用填

session.setAttribute("logined","success"); //这句话是写入一个标识,你也可以把登录的账号设置在session里面,防止发起修改请求时恶意篡改另一个帐号的资料。

第三、如何在接口验证呢?同样需要带HttpServletRequest request参数请求用于获取客户端发起http请求所携带的session,HttpSession session = request.getSession();   session.getAttribute("logined")则读取是否有logined这个key,如果没有说明没有登录过,就不给请求内容,直接返回信息提醒用户登录。

ssm项目session作用域问题

描述:用户登录系统成功后把该用户的相关信息放进一个session域中方便调用,并取名为xx,

当用户登录进入此系统之后要修改个人信息,修改完之后,将用户在前台页面修改后的个人信息重新塞到这个session域中,覆盖之前的session,这样用户当再次登录时或者查看时就是他修改之后的信息。

分析:当用户修改完个人信息之后想要再修改个人登录密码(修改个人信息和修改个人密码不在同一页面),此时就会提示输入的旧密码错误,因为修改个人信息的时候并没有个人密码,也就是在用户修改完将自己的信息塞进session的时候,个人密码封装进去的就是空值了,此时就取不到用户登录的真正密码。

解决办法:若想实现修改完个人信息之后顺利的修改个人密码,就要在修改个人信息的页面加上一个用户密码的隐藏域。这样个人登录密码也会随着用户修改的信息封装进对象,呗=被塞进session域中,这样可以在修改密码时调用session域中的内推,密码就不会为空了。


以上所述就是小编给大家介绍的《ssm项目session使用及其作用域问题》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

UNIX网络编程 卷1:套接字联网API(第3版)

UNIX网络编程 卷1:套接字联网API(第3版)

[美]W. 理查德•史蒂文斯(W. Richard Stevens)、比尔• 芬纳(Bill Fenner)、安德鲁 M. 鲁道夫(Andrew M. Rudoff) / 匿名 / 人民邮电出版社 / 2014-6-1 / 129.00

《UNIX环境高级编程(第3版)》是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX行业发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/......一起来看看 《UNIX网络编程 卷1:套接字联网API(第3版)》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码