RuoYi基于SpringBoot+Vue前后端分离的Java快速开发框架学习_2_登录

server/2024/10/18 22:27:47/

文章目录

  • 一、登录
    • 1.生成验证码
    • 2.验证码作用
      • 1.大体流程
      • 2.代码层面(我们都是从前端开始看起)


一、登录

1.生成验证码

基本思路:

  1. 后端生成一个表达式,例如3+4=?@7,显而易见@后面是答案
  2. 截取出来题干和答案
  3. 把题干1+1=?变成图片,变成流,传到前端
  4. 答案7存入Redis

2.验证码作用

1.大体流程

刷新RouYi前台后,查看Redis
在这里插入图片描述
Redis中存入了答案"10",并且"10"是存在Key值为captcha_codes中的,之后我们只需要根据Key值来提取答案即可验证用户输入的验证码是否正确。
在这里插入图片描述

2.代码层面(我们都是从前端开始看起)

Step1:找到地址栏中的地址,如下图所示为login。
在这里插入图片描述
Step2:找到地址login在路由中指向的vue文件。按照下图顺寻进行查找。
在这里插入图片描述
Step3:下图我们可以看到在这个login.vue文件created时,执行了函数this.getcode()。
在这里插入图片描述
Step4:从下面代码我们可以看到getCode()调用了getCodeImg()方法。

java">methods: {getCode() {getCodeImg().then(res => { //调用了getCodeImg()方法this.captchaEnabled = res.captchaEnabled === undefined ? true : res.captchaEnabled;if (this.captchaEnabled) {this.codeUrl = "data:image/gif;base64," + res.img;this.loginForm.uuid = res.uuid;//验证码在redis的key值}});},

Step5:而从下图我们可以看出getCodeImg是在api目录下的login文件中。
在这里插入图片描述
Step6:我们找到getCodeImg()函数,它封装了一个request对象,里面是axios的东西。
在这里插入图片描述


http://www.ppmy.cn/server/93258.html

相关文章

手势传感器 - 从零开始认识各种传感器【第十八期】

手势传感器|从零开始认识各种传感器 1、什么是手势传感器 手势传感器是一种能够感知人类手势或动作的传感器。它可以捕捉、识别和解释人类的手部动作或姿势,并将其转换成电信号或数字信号,通过识别人体的手势动作来实现与电子设备的交互,如控…

Python模块中的全局变量

在Python中,模块中的全局变量是可以在同一个模块中的函数中使用的。全局变量的作用域是模块范围内的,这意味着在同一个模块中的函数和其他代码都可以访问这些全局变量。 以下是一个例子来说明这个概念: module_a.py # 模块中的全局变量 gl…

本地Springboot项目部署到服务器(腾讯云轻量应用服务器),使其能够通过公网IP进行项目index.html的访问

在看了很多blog之后,总感觉还是不适合,总会冒出一些问题让我措不及防,但是项目的部署和展示就需要,很着急,通过bilibili和CSDN大学的帮助下,也算是有一些明白,但是还是很多不懂的地方&#xff0…

小白对抗训练入门(1)--FGM

文章目录 序原理实现 序 先想再做,对比总结! 原理 FGM核心思想是:在训练时对样本施加一定的变形,从而提升模型的健壮性。 如何施加一定的变形呢,而且还不会把模型搞为白痴呢,而且施加的形变太小&#x…

网络编程 - 粘包与拆包第二弹 - Netty粘包与拆包问题的技术解决方案

作者:逍遥Sean 简介:一个主修Java的Web网站\游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有疑问和建议,请私信或评论留言! 前言 在网络编程中&a…

Kafka的搭建及使用

Kafka搭建及使用 Kafka搭建 1、上传解压修改环境变量 # 解压 tar -zxvf kafka_2.11-1.0.0.tgz -C /usr/local/soft mv kafka_2.11-1.0.0 kafka-1.0.0tar -xvf 是一个在Unix和类Unix操作系统(如Linux和macOS)中用于解压缩或解包.tar文件的命令。 tar -…

Python自学第五天

# 嵌套 字典嵌套字典 # 字典列表 now {pet:cat,color:black} now1 {pet:cat,color:pipe} wq [now,now1] # 这里是中括号 不是花括号 花括号打印不出来 for ff in wq:print(ff) # 创建20个外星人 打印前三个 并且显示一共创建了多少个外星人 now [] for wq in range(20):# 这…

区块链简单了解

关于区块链,可以简单理解为节点通过一种共识机制,在达成共识之后,也就是其他的节点验证了方案的有效性,接受新生成的区块来加入区块链,新生成的区块中保存的是merkle树的根哈希值,而实际的数据是保存在merk…