Java项目-----图形验证码登陆实现

原理:

验证码在前端显示,但是是在后端生成, 将生成的验证码存入redis,待登录时,前端提交验证码,与后端生成的验证码比较.

详细解释:

图形验证码的原理(如下图代码).前端发起获取验证码的请求后,

1 后端接收请求,生成一个键key(随机的键) 然后生成一个验证码作为map的value.将key value set到HashMap(键不能重复)中,

2然后将此key,value存储到redis中,设置过期时间为5分钟.随后将map中的键值对返回到前端,注意此map有效时间是根据redis的有效时间而定.

-------html

--------js 3 前端获取到该map如下图

将后端获取到的value显示到前端,然后将key保存到form中,当点击登陆时,此时将form中的用户自己输入的验证码的值,和后端传递回来的key还有账户,密码传递到后端,后端拿到这个自己曾经传递回来的key和redis中的key进行寻找,然后将用户输入的value与redis对应的key相比较,如若成功,则成功进行下一步,进行数据库交互,比较账户密码.

写一个5分钟自动换验证码的方法

钩子函数调用即可

相关依赖

效果图

如图所示,图形验证码,将图形验证码的函数写在钩子函数中,加载页面即显示,

相关推荐
2501_931803752 分钟前
Go:一门为解决C语言痛点而生的现代语言
c语言·开发语言·golang
送鱼的老默6 分钟前
学习笔记--入门typescript直接案例开搞
前端·typescript
Prometheus6 分钟前
从 XMLHttpRequest 到 fetch、ReadableStream、SSE、EventSource:前端流式通信完整梳理
前端
光影少年12 分钟前
useEffect 完整理解:依赖数组、副作用清理、模拟生命周期
前端·react.js·程序员
@杰克成23 分钟前
Java学习26
java·学习·idea
之歆31 分钟前
DAY_18深度解析:数据类型转换与运算符全攻略(上)
前端·javascript
geovindu31 分钟前
go: Interpreter Pattern
开发语言·设计模式·golang·解释器模式
大家的林语冰39 分钟前
pnpm 11 发布,弃用 JSON 和 npm CLI,进化为纯 ES6 模块,新增 pnpm pack-app 等命令,供应链保护默认启用,要求 Node
前端·javascript·node.js
小白学大数据1 小时前
面向大规模爬取:Python 全站链接爬虫优化(过滤 + 断点续爬)
开发语言·爬虫·python
漓漾li1 小时前
每日面试题-前端2
前端·react.js·面试