00:00
啊,都以为是把这个验证码往那一写,就准备点完出了吧,还到不了这步,到不了这步,为为啥不是就有这么一些鬼。猜来,你猜一下子。不是他写一个邮箱,他就是一直搁那叭叭搁那点。一直好几次。点一次是不是发送一次,这点是发生。所以说这次呢,咱就搁这里面加入这个功能,这个功能它以前是没有这个功能的。咱们呢,给他加这个功能,就是说。就是说当你发送一次验证码完了以后,我再去点获取验证码的时候,我得看一下你的间隔时间。咱们的监控时间是不是应该给他规定一个时间啊,对吧,你多少时间以后你才能再发,而不是说让你你叭叭跟他一直点我这个邮箱就一直跟他发。
01:04
这由你自己规定的吗?咱接下来不就做这件事吗?对不对,那么当我再去获取验证码。我点了呀。是不是又发过去看没好,我确定以后我再点。啊,这个这个这个你你看这个网速吧。发过去。哥们这样的话,这像针对这帮人,咱是不是就得想办法了,对吧?因此咱们这个view还不完善,那接下来呢,这个功能主要就是给大家说这块咱们怎么去搞对吧,那么很显然了,当他一点击我们是不是就进到我们这个view里边了。对吧,进这个里边,那么在这个view当中,我们是不是在这去发邮件的,对吧?如果他的这个邮箱没有毛病,并且我在我的用户里边查找一下子都没有这个邮箱,这么我可以给你发邮件,但是你也不能很火的就直接发了。
02:13
所以说。一块的功能给它往上加。啊,那斯桑达不要一开始考虑它,一开始考虑它,你考虑的功能相对多了。OK,那么我怎么去找了?再想想,我是不是得首先从我们的这个邮箱验证码那张表里边儿去查一下子。查查谁呢?就查一下这个邮箱有没有发这个类型的邮件。你看我发邮箱发这个验证码之前,发这个验证码之前,你验证码他是不是就把这个验证码存到那个表里边了,所以说我在发之前,我先从那个表里边去查一下,看你这个邮箱里边有没有发过这种类型的,就是这个这个三类型,就是修改邮箱的这个。
03:04
类型的验证码。如果发过了,咱是不是就得好好考虑考虑啊,OK了。所以说接下来,那么我们就得看一下,看完之呢,以谬。我们就叫做。List吧,咱之前是不是就这么叫的,你们list,然后什呢等用呢,以will ver code called.objects点谁啊。这能去找谁呢?肯定找的是这里面的email,是不是就是就是咱这个拿到这个email对吧,Email那等于我们的email。并且他的。是不是也是我们这个大呀。对不对,我得根据这两个条件是不是查一下子,哎,还记得咱这个这个这个这个这个表里面的字段吗。
04:06
忘了忘了这个标准知道了吧,好,来看。咱这个完了,这个玩意是不是就在那存这个验证码信息啊,你发个验证码,我是不是把你的码以及你的邮箱,还有你的time是不是存起来。对吧,那么假如说他之前点了一次发发送这个邮件了,那么呢,我在这张表里面是不是存肯定存了一个,你这个邮箱是不存了一个三是不是还有一个码。对不对,肯定存了这么一个对象。所以说所以说那么呢,我们在这个view,在他发之前具体干嘛呀,从这边找一下子找谁呢?找一下你有没有给这个邮箱发过这种类型的邮件。是不是可以找到那么一个对象啊,如果能找着。代表他是不是之前发过了,对。
05:00
如果说我这个email list它是存在的。他是存在的,那我们是不是应该拿到他最近发的那个。他可能之前发了很多个。可能之前给我这个邮,这个邮箱发了4545个,四五个的话,那我是不是应该拿到最近他发的那个。所以说那我们是不是应该拿到。你们问是不是要等于我们的谁呀?以list它的点out的发型呢,是不是负的a time?是不是取它的第一个。想吗?啊,这个给大家写个注释吧。这我们在发送邮箱验证码之前。
06:02
应该去邮箱验证码。的表当中对吧。去查找。查找,看之前有没有发送过。修改邮箱这个类型的验证码,看这有没有网。当前。这个邮箱发送发送过修改邮箱这个类型的明白吧。能看懂吗?好,这是咱们第一行。OK,接着这块。如果。如果发送过。验证码。那么我们就拿到最近发送的这个。
07:04
这是不是这两个呢,是吧。我这不是已经给你时间排序了吗。销售有可能是。那你那你昨天发的,你也有个时间啊。判断在60秒。不是我这我这不是已经排序了吗?排序了以后我是不是就拿到了你最近的这个了。对不对,那肯定啊,是不是还没走完呢,对吧,拿到了这个最近的这一个,接下来我是不是就得判断了。对不对,那判断啥呢,怎么说呢。然后我是不是就得判断我当前的这个时间和你最近添加这个验证码的时间。
08:00
差呀。如果这个差值。大于了,你规律多少60秒,那就是一分钟呗,对吧?大于了一分钟,那么我是不是才让你发,如果你是小于一分钟的,我还发吗?你不烦了?是这个意思,并且并且。我还要把谁,我还要把你之前发送的这个玩意给剁掉。我不发了,我不发是不是代表着就OK了。什么意思是?来看这边,我们接下来就应该判断当前时间和最近。发送的验证码添加时间。
09:00
这。对,好,那么当前时间是谁?O。就是就是目前我目前我这个程序执行到这儿,我想要拿到当前的时间不。这不是我们的跌摊点到吗?爸爸。就是from the time是不是important的time?这我到这儿。是不是this time和点no,这次你就得带括号了。他不是在模型里边王子三啊,这的话是不是拿了当前时间,如果说我这个当前时间。去谁啊?Never move点。你看啊,如果说这个减去我们的email。
10:04
它的点ad time。这是不是一个时间段?这意思,而且我们这个衣服是不是应该在里边。同学们好,减去一个它的atime,如果它的点second。是不是可以拿他的表是吧?好,如果他的second是小于我们的。这不是你的你的你的条件吗?如果是小于60秒的,还发不发不发,那如果大于60秒呢。是不是发送啊,那么它改过来就行了。如果大于60秒,是不是发送啊。
11:04
这个音在这。能看懂吗?OK。如果它是小于60秒的。给他回个提示信息啊。告。那么呢,如果你是小于60秒。这是不是应该放这了?好,接下来这一块我们是不是给它返回一个feel啊哦,就给它来一个什么。请不要重新,请不要重复发送验证码。呃,后面再给他提示一下子,一分钟后。
12:06
那领钱的事一分钟后是不是重事啊?好,咱们就给他加了这么加这么一个逻辑。很好了,那么如果他这个东西不存在怎么办?不存在是不是就直接发了?啊,这个。搞好了。这个啊。
13:00
我把逻辑给卡的死死的了。OK,我们接着还是从上往下走一遍啊,捋一下子看一下子啊,刚才我们没有加之前,是不是我们找到它,如果说这个邮箱它没有被绑定过,咱们接着是不是在这里边,是不是直接很虎的就写了一个,他是不是就过去了,这没有上面这些。那这样的话呢,这样的话呢,就是说只要我不存在,它是不是就发了,那我点一次发紫,点一次发紫,点一次发紫就会出现这样的问题,因此当他当他在发送这个邮件的时候,我们就不能很虎杂让他这么发了。对吧,他一旦进到我这个APP里面发送的时候,我们就得干嘛,就得找一下我这个表里面有没有之前发过。啊,先去找有没有发过,如果有发过,那么干嘛呢,就拿你最近发的这条。
14:00
验证码。一般验证码不是你一分钟之后就上个验码,验证码用不了。我就删了,就我我就我我就把那个那个验证码就清了,你看哪来的什么验证码呀。我刚才不是跟你说了吗?一会咱们要把它剁掉。如果说我找了一遍,是不是找到了你之前发过的了,对吧,找到发过的那我就干嘛呢。我就把你最近发的这这条给拿拿出来。因为其他的。我也没用啊。对不对,然后呢,我就可以干嘛。而且我告诉你,今后你那里面只能存在那么一条。
15:01
因为我还没加上那个删除的那个功能呢。对不对,好,那么我就拿到你最近发的这一条,其实就拿的就是就是你刚发的那条。好吧,拿到这条以后,那么呢,我就判断谁了,我就判断我当前的时间。和你最近发送这个的时间,它的差,它的差有没有大于60秒。办公你把它做掉了。我带了60秒了以后。我这边是发送了呀。放心的,我不剁啊,我为什么要剁啊?当那个你根本不懂吧。我我。我怎么就找不到了?最新的这个你是不是打算,咱们打算是咨询署名之后,你要把它删掉吧。
16:00
嗯。如果你大于60秒,我是不是给你发了。对不对,疯了以后我是不是就把你摔在那个女生了?之前找到这个就行了。OK不OK吧,好,给你重新发了以后,那么你以前的这个玩意我还要吗?那就可以不要了。我就直接可以给你做了。因为我已经重新给你发了个新的了,发了个新的,至于你在前端里面,你等待了多久。那你在这完成,我是不是在完成里边去去去去搞你啊,我就不是在这去搞你啊。是这意思吧,所以说呢,我在这儿是不是就可以把这个没把它给干嘛。给剁掉。这。对吧,如果。如果我们重新发送了新的验证码。
17:01
那么。以前最近发的。就被清了。也就是说我数据库里面现在是不是就是最新的那个。对不对,好,完事以后你把他干掉。火线了吗?好。这是我判断这个时间。那么如果。它存在,并且呢,它的时间还不大于60秒。刚好是小于等于60秒的,那么既然它是小于等于60秒,证明他这个验证码是不是还没有失效啊,没有失效,那我就让你。等一分钟后再吃吧。对不对,说这个时间是不是由咱们自己控制啊,对不对。好完了以后呢。这是你存在发送验验证码之前发送过这种验证码这种情况,那如果说你之前从来没有发送过。啊,之前从来没有发送过,那么呢,我就可以干嘛,直接给你发了。
18:03
啊,直接就给你发了。这样的话,我们这个逻辑就算干嘛。就这源码了,你再去给我重新一直给他叭叭叭点我的,呃,什么获取验证码,我还会给你一直发吗。就不会了。而且我最终保证的是保证我的库里边儿是不是只有你最新发的这个验证码。对不对,然后你从你的库里边,从你的这个邮箱里边是不是拿到这个验证码。再到前面去填。一天,我不管你有没有点击完成。对不对,你等了,你等了哪怕一天。然后你再点完成说他也会走到我们的完成逻辑里边去,到了那边逻辑,我是不是再去判断你这个。扣的是不是已经过了你的时间了,对吧,那过了时间我就干嘛,我就不会让你修改的。我就跟你说验证法师教本。
19:02
是不是这个功能OK。好,接下来我们再去看一看,看我们这个功能有没有奏效啊。哎,这块我刚刚说的听明白了吗。好,然后呢,我就可以干嘛,到这边再来。放心。把这个油箱先。保存下的。好C,然后上面呢不是。点击修改这边。粘上,然后获取是不是有一个啦,然后再点击获取看到了。他还会还会让它发吗?不会的,你再点还是再点,还是再点,还是等待一分钟后。因为有点长吧。OK,然后到我们这里边看一下,我上一个,我上一个码是多少呀。
20:04
咱刚才是不是发了很多个是吧,看看有没有少一个是不是就行了。看一看我的。不是这数据库里边。然后到我们这里边找到我们的鼓励edu,找到我们的user下边有一个没code。到这里边儿。12345是不是少了个六。看到了吗?那个六是不是少了,证明那个六是不是给他做了OK而算面的这些玩意是不是咱们这。到时候上线的时候,这些玩意是不是都要清空的。是要有一个什么呢?是要有一个初始状态的,那么既然有一个初始状态,它就不会干嘛,他就不可能说出现多条这个。验证码记录。
21:00
尤其是这个三的。是不是这玩意,也就说它现在是不是只存在这点啊好,那么呢,我们接下来再去看,现在有一分钟了,有一分钟了以后呢,我们再去到这边。再点一下子。走,你。是不是又发了一个,又发了一个,我们在这边看看我们上面这条是不是有没有删掉。U啊,U后边是U点击刷新。看了吗?这一条是不是就没了,而这里边是不是永永远远只存在这一条啊,OK。那么这就是啥给大家加的这个功能啊,加这个功能,你不加这个功能。一一点。一点意思都没有,一点难度都没有啊,是不是这意思好那么。咱们这块就给大家说到这儿行吧,啊,这是这个功能啊。
我来说两句