首页 > 其他分享 >在线视频项目学习笔记(三)—前台登录相关

在线视频项目学习笔记(三)—前台登录相关

时间:2023-01-01 22:55:07浏览次数:46  
标签:接口 登录 过期 在线视频 验证码 笔记 发送 phone 前台

一、短信验证码接口分析

1.首先第一点需要注意的就是短信验证码接口和登录接口不是一个接口,短信验证码接口是前端界面一点击发送验证码调用的,登录接口是前端在填上验证码以后一点击登录调用的。

2.短信验证码接口的逻辑过程如下图所示,需要注意的是这个过程中需要在redis加入“过期+phone”和“手机+phone”两个值,其中这个过期phone设置为60秒,60秒后这个过期phone就在redis中不存在了,然后我们下次就可以继续再发送验证码了,不到60秒不允许再发送验证码;手机phone指的是发送这一次验证码的有效时间(注意下次重新发送验证码以后上一次发送的就不能用了,因为同样的key会覆盖)。(补充:过期phone的value为什么都不重要,重点是判断这个key是否存在;手机phone对应的value是验证码)

 

 

 

 这里我们把发送验证码的工具象类单拿出来说一下:

这里的代码完全可以说是完全参考的原版SDK示例,只是把accessKey的ID和Secret、签名sigename(就是你是谁,例如应学软件、青稞小店)、短信模板的编号改成自己的,实际调用的时候再把电话号和四位或者六位验证码作为参数传进去,然后就可以发送成功了。

 

 

 二、登录接口分析

1.验证码发送成功后会在redis中存入一条数据,登录的时候比对数据即可。

2.这个数据就是上一个接口中存入的“手机+phone”,本次前端传入手机号和验证码,先判断手机号phone是否在redis中存在,不存在说明验证码过期了 (throw new RuntimeException("提示:验证码已经过期!"););如果存在则取出该key对应的value(也就是验证码),对比输入的是否正确。 3.然后判断如果是新用户,需要在数据库中插入一条新用户信息。 4.最后得到这次登录的sessionId,将其返回给前端。

 

 三、已登录接口(注意这里有个自定义注解)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

标签:接口,登录,过期,在线视频,验证码,笔记,发送,phone,前台
From: https://www.cnblogs.com/worthmove/p/17018590.html

相关文章

  • mt19937随机数生成_学习笔记
    好文传送门1好文传送门2使用模板:#include<bits/stdc++.h>usingnamespacestd;mt19937rnd(std::random_device{}());intmain(){for(inti=1;i<=10;i++)......
  • 【读书笔记】如何回复审稿意见
    回复的基本结构感谢审稿人与编辑的审稿Wesincerelythankthehandlingeditorforcoordinatingthereviewofourmanuscript.Wealsothankthereviewersforth......
  • 「学习笔记」分块
    树状数组、线段树、ST表……这些数据结构我们用的也不算少了,但实际上这些数据结构还不够灵活,面对一些区间问题时反而会出问题。举个栗子:现在有\(n\)个单调队列需要维......
  • 朱刘算法学习笔记
    一句话概括:朱刘算法就是最小生成树算法在有向图中的应用。树形图:无环除了根以外,每个点的入度为1最小树形图:一个有向图,存在从某个点开始的到达所有的的一个最小......
  • 文件包含学习笔记
    文件包含原理include()include_once()require()require_once()include()和require()的区别:require()如果在包含过程中出错,就会直接退出,不执行后续语句include(......
  • AC自动机学习笔记
    一句话概括:\(AC\)自动机\(=Trie+Kmp\)算法复习\(Trie\)字典树,顾名思义,是一个字典一样的树,结构非常简单,不再赘述。codeintson[N][26],cnt[N],idx;voidinser......
  • 2-SAT学习笔记
    \(SAT:satisfaction\)\(SAT\)问题:若干问题\(x_1,x_2,...,x_n\),另有\(m\)个需要满足条件,其中每个命题为真或假,求\(x_1,x_2,...,x_n\)的一种取值。一般\(k-SAT\)问......
  • 狂神说Java(零基础)预科班笔记
    前言​以下笔记是根据B站up主遇见狂神说的Java零基础学习视频整理而成,视频链接点这里跳转(狂神说系列Java零基础版)。由于本人推崇费曼学习法,不想要写完一篇笔记之后就直......
  • 动手深度学习系列笔记
    动手学深度学习在线课程此系列文章为听课所敲代码+笔记,使用jupyternotebook展现目录​​3月20日​​​​3月21日​​​​3月27日​​​​3月28日​​​​4月10日​​​​4......
  • 操作系统OS笔记目录(清华大学)
    简介不得不说想自学学操作系统,清华大学慕课是个不错的选择,但难度比较大,特别是想把慕课的实验部分内容也完成的话。不过如果能把它的实验部分也完成的话,相信你会对操作系统......