实现短信验证码的登录注册功能

第一步:查看接口内容

为什么用@RequestBody因为其中我们前端传过来的是json数据那么后端我们就要用@requestBody注解来接收了。

查看写这个实体类

这里是因为我们前端除了有短信登录,还有密码登录所以有password

第二步:写方法(就是在这个controller中)

第三步:实现方法

接口(interface)

真正的实现部分(impl)

第四步:实现真正的流程

  1. 校验手机号

  1. 如果不符合,返回错误信息

  1. 校验验证码(这里上面是取出session存的验证码,下面是提交过来的验证码(前端提交的))

  1. 验证码不一致就报错

  1. 一致,根据手机号查询用户(这里我们使用的mybtis-puls):

!!!我们使用query()因为我们继承了这个ServiceImpl且指明了实体类(实现单表的增删改查)还有我们的Mapper是什么UserMapper,这样puls就会帮我们查了

mybatis提供

  1. query()=这个,上面的<实体类>告诉了我们表名

  1. eq等价于=
  2. 要清楚我们需要要查出的数据是多个还是单个,多个就是list,单个one

  1. 判断用户是否存在

  1. 不存在就创建新用户并保存(因为成不成功都要保存到session中所用用user)

  1. 用户信息保存到session中

20、实现短信验证码的登录注册功能相关推荐

  1. springboot项目使用短信验证码的登录注册功能

    一. 操作流程 用户输入手机号,点击发送验证码按钮 前端将手机号发送给后端 后端生成一个6位的随机数通过短信发送给用户,之后手机号为key,随机数为value,存入缓存中,最后将短信发送是否成功的结果 ...

  2. 系统登录页面短信验证码方式登录实现

    近期公司有个需求,要求使用短信验证码登录,取代原来的图片验证码方式,在此记录一下我的实现方法,希望对你有所帮助 公司需求:目前只有账号和验证码方式验证登录,按照公司网络安全统一部署,要求所有公网系统都 ...

  3. 06-发送短信验证码实现登录功能

    1.发送短信验证码实现登录功能的流程 1.1.获取验证码流程 1.2.登录流程 1.3.页面带有图形验证码的流程 2. 注册登录二合一页面的开发 2.1.将src目录下的App.vue页面上通用显示的 ...

  4. springsecurity自定义短信验证码认证登录流程

    文章目录 前言 验证码存储我们采用redis作为缓存 (注意,这里为了测试方便改为手动设置验证码) 经过上面接口,验证码已经存入到redis中,下面开始认证流程 自定义SmsCodeAuthentic ...

  5. Nodejs实现给手机发送短信验证码用于登录功能(免费短信)

    我们开发的应用通常需要通过手机短信验证码验证进行登录,方便了那些容易忘记密码的用户,同时也降低了是密码被盗的风险性. 文章目录 1.注册容联云通信账号(免费) 2.nodejs发送请求即可发送短信验证 ...

  6. PHP 实现阿里云短信API对接(登录/注册参考)

    目录 一.阿里云SDK依赖(需要安装好composer) 二.使用步骤 1.登录/注册接口对接的阿里云发送短信的控制器 2.登录发送短信/登录短信验证 3:注册发送短信/注册短信验证 登录和注册时都需 ...

  7. 发送短信验证码执行登录操作

    短信服务介绍: 目前市场上有很多第三方提供的短信服务,这些第三方短息服务会和各个运营商(移动,联通,电信)对接,我们只需要注册成为会员,并且按照提供的开发文档进行调用就可以完成发送短信,需要说明的是, ...

  8. Go语言初识应用--容联云发送短信验证码、手机号注册

    使用gin框架.gorm映射 所使用的连接容联云参考容联云官方文档,放置到utils中, gin项目结构根据自身需要,大题如下设置: utils--sms.go package main import ...

  9. SpringCloud - Oauth2增加短信验证码验证登录

    文章目录 前言 Oauth2认证过程 1.在进行认证时,会先根据认证类型即前端传入的grant_type,从所有的TokenGranter中找到具体匹配的TokenGranter 2.在找到对应的To ...

最新文章

  1. TensorRT Samples: MNIST(serialize TensorRT model)
  2. 一款基jquery超炫的动画导航菜单
  3. 今天清华学长手把手带你做UI自动化测试
  4. 简单说一下kafka 与其他消息队列
  5. 华硕z170a如何开启m2_跑得快也要站得稳,华硕灵珑II笔记本保护你的数据安全
  6. java图片滚动特效_js图片各种滚动效果
  7. vsftpd的基于pam_mysql的虚拟用户机制实现数据传输
  8. 机器学习工程师 - Udacity 强化学习 Part Nine
  9. 地图 显示 动态轨迹_野外探路必备神器——奥维互动地图浏览器
  10. oracle当天是这个月的第几周,oracle_oracle查看当前日期是第几个星期的方法,系统当前时间是多少周,就是 - phpStudy...
  11. 【C++11】之 emplace_back() 与 push_back() 的区别
  12. mumu模拟器cpu设置_网易MuMu模拟器CPU虚拟化怎么设置?
  13. GPT专业应用:如何让GPT策划方案
  14. 2D和3D的对比,不用犹豫,三维设计是行业未来必然趋势!
  15. 【进阶】使用Excel进行回归分析,预测真实值
  16. mysql链接liunx远程服务器
  17. 纸上谈兵: 图 (graph)
  18. 【2021-07-23】JS逆向之某乎x_zes_96
  19. ps入门第16天_ps液化变形_ps瘦身 案例:魔鬼瘦身大法
  20. 前端干货知识点!带你重温细致入微的前端内容!【长文·建议收藏】

热门文章

  1. python在linux上面下载文件以及文件夹到本地时候本地文件夹报PermissionError: [Errno 13] Permission denied的解决办法
  2. 400w人在抖音学驾照科目一,给我看哭了……用Python这不一下整活了吗
  3. Google Java 编码规范
  4. vue2.x 标签动态设置背景问题,有透明度
  5. 【Qt】error: QApplication: No such file or directory 解决方案
  6. Hexo+buttterfly适合任意主题美化(悬挂动态修饰物)
  7. Python-CSP 201703-1 分蛋糕
  8. Linux学习基本步骤
  9. python 做表格分析_Python 处理分析 128 张 Excel 表格竟不到3秒?| 附数据集
  10. CSS font-size属性