个人知乎 ##功能一-登录注册
来源:互联网 发布:学校网上缴费软件 编辑:程序博客网 时间:2024/05/01 05:51
个人知乎
功能一-登录注册
注册
用户名合法性检测密码长度要求密码salt加密用户邮件/短信激活
登录
token登记关联userid,保存入数据库token有效期设置,下发给浏览器cookie是token的一种形式
浏览
浏览器访问时带上cookie,服务端查cookie判断用户状态,权限
拦截器
切面的思路:框架拦截器所有业务都需要先判断->用户登录判断完成后加入到上下文使能够渲染出用户信息
public class PassportInterceptor implements Handler Interceptor{ boolean preHandle()throws Exception{ //利用Dao验证cookie //之后加入经过验证的数据到上下文 HostHolder.set(user); } void postHandle() throws Exception{ //是能够在所有模板中访问user modelAndView.addObject("user",hostHolder.get User()); } void afterCompletion() throws Exception; }//线程本地变量@Componentpublic class HostHolder{ //每个线程都有一个不同的user private static ThreadLocal<User> users= new ThreadLocal<>(); //注意形式,转为当前线程user //实现map<线程id,user>形式 public User getUser(){ return users.get(); } public void setUser(User user){ users.set(user); } public void clear(){ users.remove(); }}
拦截器配置,注意拦截器间的顺序
public class WendaWebConfiguration extends WebMvcConfigurer Adapter{ @Autowired PassportInterceptor passportInerceptor; @Override public void addInterceptors(InterceptorRegistry registry){ //注册拦截器,并配置拦截url registry.addInterceptor(passportInterce ptor).addPathPatterns("/user/*"); super.addInterceptors(registry); } }
未登录跳转:优化用户体验
记录登录前想要访问的页面,登录后自动跳转拦截器判断是否登录:跳转到登陆页记录当前页:跳转时带一个参数next记录当前url实现跳转:对应controller内解析next
数据安全性
阅读全文
0 0
- 个人知乎 ##功能一-登录注册
- 个人知乎 ##功能二-问题发布
- 个人知乎 ##功能三-评论中心
- 个人知乎 ##功能四-站内信
- 个人知乎 ##功能七-邮件发送
- 个人知乎 ##功能八-关注服务
- 个人知乎 ##基础一-项目介绍
- 个人知乎 ##功能五-赞踩功能对评论
- 个人知乎 ##功能九-timeline/新鲜事推送
- 模拟登录-知乎
- Python4--登录知乎
- 登录知乎
- 爬虫登录知乎
- 模拟登录知乎
- scrapy打造知乎后花园一: 验证码登录
- Android 登录注册功能
- iOS登录注册功能
- 登录注册功能
- 个人知乎 ##基础三-数据库基础
- AB1601串口死机修改
- HDOJ2115 I Love This Game
- 【学习opencv】高斯滤波及其实现
- 如何用vue.js写购物车功能
- 个人知乎 ##功能一-登录注册
- 【无线安全实践入门】破解WiFi密码的多个方法
- 多维数据可视化(echart,plotly,matlab)
- idea 之远程debug调试
- Chapter 6. Hidden Markov and Maximum Entropy Models
- 个人知乎 ##功能二-问题发布
- 安卓手机分区
- sizeof和strlen的区别
- 将表单你序列化为json对象