个人知乎

功能一-登录注册

注册

用户名合法性检测
密码长度要求
密码salt加密
用户邮件/短信激活

登录

token登记关联userid,保存入数据库
token有效期设置,下发给浏览器
cookie是token的一种形式

浏览

浏览器访问时带上cookie,服务端查cookie
判断用户状态,权限

拦截器

切面的思路:框架拦截器
所有业务都需要先判断->用户登录
判断完成后加入到上下文使能够渲染出用户信息
public class PassportInterceptor implements HandlerInterceptor{boolean preHandle()throws Exception{//利用Dao验证cookie//之后加入经过验证的数据到上下文HostHolder.set(user);}void postHandle() throws Exception{//是能够在所有模板中访问usermodelAndView.addObject("user",hostHolder.getUser());}void afterCompletion() throws Exception;}
//线程本地变量
@Component
public class HostHolder{//每个线程都有一个不同的userprivate static ThreadLocal<User> users= newThreadLocal<>();//注意形式,转为当前线程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 WebMvcConfigurerAdapter{@AutowiredPassportInterceptor passportInerceptor;@Overridepublic void addInterceptors(InterceptorRegistryregistry){//注册拦截器,并配置拦截urlregistry.addInterceptor(passportInterceptor).addPathPatterns("/user/*");super.addInterceptors(registry);}}

未登录跳转:优化用户体验

记录登录前想要访问的页面,登录后自动跳转
拦截器判断是否登录:跳转到登陆页
记录当前页:跳转时带一个参数next记录当前url
实现跳转:对应controller内解析next

数据安全性

个人知乎 ##功能一-登录注册相关推荐

  1. php微信网页开发实现自动登录注册功能实例

    功能:自动登录注册功能 描述:php实现微信网页自动登录注册功能 范围:适用于所有php版本 功能实例 $token = $_COOKIE['wechat_token']; if($token){// ...

  2. Python Socket联机自动匹配双人五子棋(含登录注册系统与界面,数据库连接,可作结课作业,可用于学习)

    1.前言 首先,关于源码的获取,本人提供了三种方式: 直接从文章里面Ctrl+C,Ctrl+V,然后按照我已给的文件结构搞一下即可: 通过积分下载上传到CSDN的资源: 点开本人的主页,点击" ...

  3. 做登录/注册页面需考虑哪些问题?

    [文章摘要]现在人手一部手机的前提下,手机号登录/注册的方式无疑是最简单直接的方式.而且现在很多其他注册方式,到后面还是会引导用户去绑定手机. 这几天在做登录/注册页面.做之前看了很多其他公司的登录/ ...

  4. 软件工程期末报告(登录注册部分)

    云小智微校园工具系统的设计与实现成员1注册模块 目录 云小智微校园工具系统的设计与实现成员1注册模块 第一章 绪论 第二章需求分析: 1.活动图: 2.用例图: 什么用户参与了业务模块: 这类用户在模 ...

  5. SSM登录注册和邮箱激活

    1:首先是html1的样式 <!DOCTYPE html> <html lang="en"> <head><meta charset=&q ...

  6. java实现用户登录注册功能(用集合框架来实现)

    需求:实现用户登录注册功能(用集合框架来实现) 分析: A:需求的类和接口 1.用户类 UserBean 2.用户操作方法接口和实现类 UserDao UserDaoImpl 3.测试类 UserTe ...

  7. 注册登录案例用MVC和mysql_用MVC模式实现简单用户登录注册功能

    Model2模式 Jsp+Servlet+JavaBean MVC:开发模式 M:Model 模型层 ----> JavaBean V:View 视图层 ----> Jsp C:Contr ...

  8. Flask实战2问答平台-完成登录注册功能

    本来可以提前完成这篇的,结果测试时发现了一些问题,稍后将会提到. 上篇中我们已经完成了登录注册的界面,现在具体完成其具体功能. 1.注册功能 因为注册成功后,才能登录,我们在主py文件中添加如下 @a ...

  9. node mysql登录注册_图解NodeJS实现登录注册功能

    该Demo根据菜鸟教程的练手项目,请提前到菜鸟教程的官网查看nodejs的相关教程,根据教程实际操作一遍,然后自己动手去实现登录.注册功能,此Demo只作参考,不符合前端相关规范. 使用的技术栈 no ...

  10. php登陆页面修改密码的功能,使用bootstrap创建登录注册页面并实现表单验证功能...

    本篇文章给大家介绍一下使用bootstrap创建登录注册页面并实现单验证功能的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 用bootstrap做登入注册页面,使用valid ...

最新文章

  1. ​别再用方括号在Python中获取字典的值,试试这个方法
  2. Cisco ***学习笔记--第二天
  3. Day03——Python函数
  4. webpack学习之路
  5. springboot加入com.fasterxml.jackson.core-jackson-databind依赖后报错Error creating bean with name ‘requestM
  6. OpenFOAM边界类型(终极详细介绍)
  7. SpringBoot 优雅的配置拦截器方式
  8. Web 攻击越发复杂,如何保证云上业务高可用性的同时系统不被入侵?| 专家谈...
  9. 线上python课程一般多少钱-python培训班一般多少钱?一篇文章告诉你
  10. Android(第三方库汇总)
  11. PDF文件如何删除空白页?告诉你两种好方法
  12. 华为内部几近满分的项目管理PPT,牛逼了
  13. java 模板组件_2-1 模块组件模板目录层级及简单定义
  14. 国美易卡运用人工智能实现线上线下消费场景
  15. MiniGUI——第一个程序helloworld
  16. 健身产品如何线上引流,健身行业如何线上引流?
  17. Distiller 安装时环境配置的一些可选项
  18. 百度与谷歌排名规则算法的大致区别
  19. python从wind导入数据
  20. 解决word行距和字距不准

热门文章

  1. 【编解码】从零开始写H264解码器(2) NALU
  2. 了解Linux操作系统
  3. 华为IPSec VPN的配置
  4. 东芝抢先一步,推出了全球首款16TB容量的硬盘MG08系列
  5. ncnn使用GPU时报error: undefined reference to *******
  6. 如何来优化招聘类网站-SEO教学
  7. 蓝桥杯2022年第十三届决赛真题-迷宫
  8. AutoRunner 功能自动化测试项目实训之常见问题(十)
  9. C语言-快速排序实现
  10. linux下texlive的卸载,Linux 下 texlive 2018 的安装