00:00
我们先来处理第一个system log in啊,写这样的,写这个ul所对应的一个controller,那么打开我们这个项目,在我们的controller层中之,呃,从在哪块呢?在这个system controller中继续写哈,因为对应的运输路径不是它嘛,对吧?那么接下来我们这个写到上面吧,诶,这是一个,嗯,校验登录是否成功的一个方法,返回值呢,我写成一个result,呃,Re UT result为啥返回它呢?呃,原因就是我们看这个响应的结果啊,你看想的结果是一个code message data OK,那我们见到响的结果,但凡是这样的,它一定是一个result对象转成,哎,转成了一个什么杰森格式的一个对象,所以呢,后端这块写的一定是一个result,然后把它转成杰森,然后转成杰森啊好,呃,起个名字吧,叫做loin。Log个音啊,那么在这里面我们需要接收什么参数呢?对吧?来我们看一下它给我们请求的参数,哪些是一个阶层格式的一个哎,请求题,那么呃,这个user password verify code和user type,它是跟谁对应呢?我们可以单独写四个参数来接入它啊,但是会比较麻烦,我们在这块有专门一个叫做log in form的一个类,你看这个类里面这个属性正好是它请求对应的四个属性,所以呢,我们就可以把请示体呢给让我们的spring Mac啊,让我们的supreme boot自动给我们封装成这样的一个log in form的一个对象啊,那在这呢,它的参数列表第一个应该是一个什么?是一个呃,Log in。
01:29
Log in form那个对象来log in form,这个log form如果直接写这的话呢,它是不会给我们自动进行转换的,因为它是相当于是以请求体提交阶层字符串的形式来给我们提交过来的,要是想要这个阶层字符串呢,成功封装成转换成log log in form,我们需要再来一个at request body才行,哎,否则呢,是转换不了的。好,这个哎,怎么变成responsibility body了,写错了啊,Request body。I q request body哎讲他OK,诶诶怎么还不错啊误包好接下来呢,我们就要在这里写记呃后续的业务逻辑处理了啊对应的应对应的URL也在这加一下吧艾,这是一个post请求,就来一个post mapping啊对应的这个啊对应的这个路径是老老给好在这里边我们进行校验了哈,进行校验的话都要校验哪些呢?第一个要校验的就是呃什么呢?我们这个验证码是否有效验证码问题校验哎验证码校验完之后呢,还要校验什么呢?还要分用户,用户类型类型啊进行进行校验。
02:41
啊,为什么要分用户类型进行校验呢?来看这我们在登录的时候啊,我们在登录的时候先退出一下啊,退出登录。在登录的时候呢,我们可以选的这个有管理员,学生和教师是三个不同的身份,那管理员要查的话,应该查哪个表呢?他要查的其实是这个表啊在这个,呃,Din这个表是他使用这个用户名和密码来进行校验登录的,那如果说你登录的时候选的是学生,选的是学生,那查的是哪个表呢?查的是蒂的这个表,这个表里面的,哎,我们的这个用户名和什么呢?哎和我们的这个密码来进行校验的,如果说你是讲师身份来登录的话,教师身份来登录的话,那么查的其实是这个表,哎,是这个用这个叫做用户名和这个密码。
03:25
啊,所以呢,我们要在这块通过用户的不同类型来查不同的啊这个表格,然后判断能不能进行登录成功,然后再进行单独校验哈,先来第一步完成用户码,诶完成验证码的一个校验,那这个验证码在哪呢?这个验证码拉form里面有一个另一个验证码呢?在哪呢?在我们的session审之中,那我就要获取session审,获取session审的话怎么获得呢?来一个HTTP啊,So let request,先拿一个request对象,在这里面呢,我们用request对象啊去获取什么呢?嗯,来request对象去get什么呢?去get session去,来拿到session之后,再从session中去拿出目前session中里面所存的那一个啊这个验证码,这个验证码当时往里存的时候是怎么用的,名字是啥呢?来我们看一看,当时我里存的名叫做WiFi code,那你取的时候呢,也要用这个名来进行取啊,取出来之后呢,这个就是我们的ver尔code,它呢应该是一个什么呢?应该是一个字串,嗯,前面这个呢,也是一个呃字串。
04:26
哎,好啊,这个是我们section中所存存储的这个verify code,那另一个verify code应该是log in form里边的verify code,那把它也拿出来呗,Login form.get verify code,嗯,这是verify cold啊,这是我们这样写吧,Session verify cold,嗯,Session verify code下面这是我们的,这个叫做log in啊,Log in veryify code。嗯,好啊。好,那接下来就校验什么呢?校验他们两个相不相同,诶就完事了啊呃,有可能用户在提交的时候呢,压根就没有输入我们这个验证码,那这验证码呢,我们可以先提示用户,万一用户没输入的话,那用户用户没输入的话呢,那么呃可以这个,呃可以这个提示一下用户啊,你没有输入或者是校验什么,或者教验一下,呃,你当前这个系统中啊,因为这个三审呢,要是不设置它的默认存活时间,半个小时就失效了,有可能你你在登录页面呢,获取个验证码之后,你半个小时没操作,半个小时之后呢,你再进行一个呃密码的一个,呃再再进行一个提交,那可能后台这块呢,这个验证码压根就不存在了,是吧?所以呢,在进行正式的对比之前呢,先做这样一个判断,要做个什么判断呢?如果啊。
05:36
如果什么呢?如果空纵串点ES,哎,嗯,点es.es我们这个呃,Systemm verify code,呃,不是systemm verify code是我们这个呃赛里面这个verfi code啊或者什么呢?或者是no,诶等于等于我们这个session verfi code,那就说明此时session里面已经没有这个验证码了,如果没有这验验证码说明什么呀,说明这个验证码已经失效了啊是时间太长了,那够在这直接return一个什么呢?Return一个result对象啊眼result对象,嗯,那我们可以调用他这个file方法,快速给我们生成一个,并且往他身上设置一个message信息,为什么呢?哎,信息为验证码。
06:14
验证验证码失效啊,验证码失效请刷新后重试。刷新后来重示,好,这是第一个提示,第二个提示呢,就开始进入到这个验证码是不是前后端后前后端的验证码是否相同了啊,那怎么提示呢?如果说不相同,我直接在这块呢提示说验证码有误,就不让程序往下走了,那怎么是不相同呢?If if什么呢?If,我们这个session verify code.equals一个knock,不区分它家一起去对比什么呢?对比这个log in verify code,那这是相同啊,如果说是不相同,那再来一个叹号,哎,这就是取反嘛,不相同我应该想应一个什么信息呢?把这个信息再拿过来,来CTRLC也响应一个file,也想应一个file啊,然后设置的message是啥呢?不是验证码失效了,是验证码有误,验证码有误,嗯,可以提示一下,请刷新后重试,或者是请仔细啊,请小心输入后重试。
07:11
哎,请小心输入啊后重试啊,应该验证码嘛,一不小心输入错了啊,当这两个条件都不满足,都不满足说明什么呢?都不满足说明这个验证码没问题,通过了,通过之后后面就要对,就要干嘛呢?就要分用户类型对用户进行校验了,但在用户校验之前应该什么呢?应该从三生域,三生域呃中移除什么呀?移除这个验证码,移除啊现有验证码验证码啊,为啥移除呢?因为这个验证码已经用过了,就已经失效了,哎你要是做一些不规范的操作,可能一不小心用的验证码还是什么呀,还是你上一次在一块存的这个验证码呢,所以需要从session语种把它移除呢,怎么移除呢?哎,Session,哎,session.remove attribute,哎,Remove这个这个removed是谁呢?Removed,就是这个verify code,让他从赛身育中进行个移出就可以了,移出之后呢,接下来进啊,就要分用户进行校验啊,好好,那么在这就。
08:11
那进判断了啊嗯,如果用户呢是一号类型,那我就要查我的命表,那二号用二号呢,查我们什么,查我们这个啊学生表三号的话呢,就查我们这个,哎教师这个表,那我怎么知道现在是几号呢?我们就可以从这个log in form身上去进行获取了啊log in form.get什么get到user type,这是用户类型啊,这个用户类型呢是一个int值,那我们判断123,那我这块可以直接来一个什么,来一个呃,Switch,然后来一个小括号,把这个loging form这个值拿到之后呢,嗯,对它进行一个啊都条件分支啊,来一个case,如果是哎一的话,那我在这块就要查哎这个管理员表,这管理员表了啊CASE2K三都写一下啊。K2啊,K43啊K3这些都弄一下,当如果是一的时候,我们在这干什么呢?就是要使用service维层,根据我们这个用户名和密码去连接数据库,去查什么,去查有没有一个min,那我这块要用的什么呢?要用到dmin service,诶调查一个什么,第二有一个叫做呃,Log in的一个方法,哎,然后呢,去给我们查询,去查的时候把谁传过去呢?把这个log in方我们继续给他传过去,因为这里边不就包含了用户名和密码嘛,让他给我们返回一个in的一个对象,Din对象如果找到了,就让他给我们返回1DIN对象,如果没找到这个din呢,就让他给我就就让它是一个闹就可以了啊,那后续呢,我就可以判断了,如果din它不会闹,就说明找到了啊,就说明找到了,好,那这个方法还没实现,没实现没关系啊,暂时先放这一会,我们把后面逻辑逻辑写完了,回头再实现这个方法啊。
09:44
如果说用户不一闹,那来一个什么呢?No,哎,它这个不等于额的命,然后再来一个点F啊不等有的命,那么我们就将什么呢?就将用户的类型啊,将用户的类型啊,用户的类型和用户的这个ID应该是用户的ID啊。
10:09
那是用户的类,用户的ID和类型啊一样,用户的ID啊,这个转换成什么,转换成啊一个什么呀,转换成一个密文,嗯,转成一秘文,然后呢,以token的形式啊以。这个token to kn的名称的名称,呃像什么呀?像这个,哎,我们的客户端,客户端反馈,嗯,反馈就可以了啊呃,如果不会空,那我就要要就用到这个GW,呃,这个help拉,嗯,这W,呃t helper啊g w helper里面有个什么,有个叫做create token的一个方法,诶创建一个token口令,那么在创建token口令的时候呢,需要传两个东西,一个是我们,呃当前这个adin adin,诶它的什么呀?它的这个ID get ID,然后另一个就是你当前的用户类型,用户类型是啥呢?你这块已经满足KCE了,那用户类型一定是一个一,它就用这两个信息给我们生成一个密文的个投口口令,但这报错了,你为什么报错呢?因为它需要的是一个浪值,而我这是in的一个值,那in一个值,那怎么办呢?来把这个呃是转成long啊来来一个long外流有没有,哎,调它的long位流方法就是给我们转成一个long值了,转成一个long值之后呢,它会给我们生成。
11:24
一个token口令,嗯,生成一个token口令,那我们接下来要把这个token口令呢,响应给我们的浏览器,响个浏览器,响应浏览器的数据格式长什么样呢?长这个样子啊,你看这个token呢,是放到一个data属性上去了,那外面明显这是什么,这是一个result,这是一个result,也就说我们这个token这个字符串呢,以token这个名称,然后以这样一个秘文字符串,哎,以这样的秘文字符串放到了我们的result对象的什么呀?Result对象的这个data上去了啊,Data上去了,而且这里边是一个object object里面的token,那那这个怎么放呢?这个我们可以这么放啊,我们现在这么玩,在上面准备一个什么呢?准备一个集合,哎,准备一个map,准备一个map啊然后呢,放入什么呢?放入,嗯,呃,这用于存放响应的什么响的数据,哎,想的数据来一个什么,来一个map啊,诶map。
12:18
嗯,这的是随便就可以了,值呢,可以写成object,这样的话放什么数据类型都行啊,起一个名叫做什么叫做map,那等于你有一个哈希map,另个的哈希map吧。有一个link的。Link的哈西map啊,念完之后往这一放就OK了啊呃,那我们可以把这个token放到这个map里,然后我们再把这个map放到result之中啊,再进行返回就OK了,那怎么把这个图放到map里呢?非常简单吗?map.put哎,然后这个那键呢,必须是token,诶值呢是上面是什么?上面这个字母串来token就可以了,哎,当然了,我们也可以直接把上面这一段啊,这段全给它拿过来,来CTRLX直接用这里不就完了吗?
13:07
对吧?哎,这就少写上代码嘛,这个就不要了,登录成功之后呢,我们把用户的这个ID和Y6ID啊,以及什么以及以及用户类型啊,这个转换成了一个token字符串了,然后你我们看一看它这个create token的时候都用了哪些信息,一个是当前他记录了一下这个,呃,有效时间为24个小时,那后面呢,在验证图文的时候呢,就要验证一下它的一个时效性了,同时呢,还加了一个呃这个信息的一个字符串,呃,这叫什么?这个就是加密算法中的一个过程,叫做加盐,我在原本这个信息之上呢,再给你加上一个其他的一个后缀信息,那在解密的时候,你要是不知道,不知道这个后缀信息是啥的话,反型解密也解密不了,哎,然后这个加密的过程,这个咱们就不用管了,它用的是这个叫做create token啊,你看传过来之后给我们返回了这样一个密文的一个字符串来好。呃,返回命文字符串之后,下一步是干嘛呢?下一步如果说啊,如果说ELLC啊。
14:02
如果说没有找到,没有找到,我在这干这样一个事,叫做手动抛出throw一个什么呀,Throw一个new,诶runtime exception哎,手动抛出一个运行时异常,那这个运行时异常给个提示信息吧,叫做什么呢?叫做用户名呃或者是呃或者呃密码有误有误,好然后再来看啊,这里面如果产生异常的话,那肯定要进行一个try catch处理啊,那我们可以把这个整个来一个什么呢?CTRL加alt加T,然后再用一个try catch给它上STRY包上,如果要是没有异常的话,整个这个过程中要是没有异常,那我在这块return一个什么呢?来return return一个result对象,然后这个result对象呢,呃是一个OK的,完全啊没有问题的,呃,这个200成功的一个响应啊,然后把什么呢?把这个map作为数据放到里面去,哎就OK了,这个map里边不就包含了一个投屏信息嘛,是吧?诶如果出现异常了,出现异常怎么办?在这个异常这个catch里边,我们return一个什么,Return一个result,对象a result。
15:03
的对象啊要对象,然后呢啊调头的fair fail方法,哎,创建一个就是失败的想要的信息啊,然后再给大家提来一个提示信息message message什么呢?我直接把这个异常信息来1.getmessage方式就可以了,诶这个异常信息是谁呢?这个1.getmessageget是谁呢?就是这里面这个异常对象它所扔出来这个信息,扔出的信息是啥呀?哎,就是它这个信息呢,放到这个E对象身上了,然后我们在这块用这个E对象在get message,又把这个信息呢,哎拿到这来了啊这是一个当用户什么呢?用户是adin的时候呢,就到这个adin表格里面去查一下啊好,如果用户是二号类型,二号类型就要干嘛呢?就要到学生表格去查,那整体结构跟这个是类似的啊,把这个再复制到下面,复制到下面之后,这块查的就不是一个灯in了啊,应该查的是啥呢?应该查的是一个学生,所以这块应该调用学生的这个字,这个student student service啊,Service对象,然后也是调一个log in的一个方法,然后把这个log in form传过去,Log in。
16:03
For,传过去,传过去之后呢,让他给我们返回一个student对象,Student student。等于它下面这块就是判断student的对象为被空,如果被空就从student身上去get什么get一个学生的ID啊,然后生成一个token,再响应给我们的用户就可以了,这是啊学生啊,这么处理,但是用户用户类型这块要注意啊,此时用户类型要设置为二,因为前端呢,要接收这个用户类型,根据这个用户类型来判断往哪个页面去跳是吧。再来第三个,咱把这个来给它control c复制一下,在CASE3里面呢,就是找什么呀,找这个teacher teacher service啊,Service还是把这个烙form给他传过去,但是让他给我们返回的是一个T对象。Teacher对象啊,就会写成一个t teacher后面判断的就是这个teacher,如果不为空,哎,那么就把这个teacher的ID和数据类和这个用户类型转成一什么转成一个投N口令,那这块是一个哎三,那就没问题了,呃最后呢,如果说这个CASE123这里边都没有进行任何的返回,就说明压根没有找到用户,那最后呢,我在这块也要return一个,Return一个什么呢?Return一个呃,失败的信息吧,怎么提示呢?Result,诶点file。
17:23
里面放的信息来放个吧,这个message是什么呢?叫做查无次用户,查无次用户啊,就是没找到啊,那我们这个log in呢,就已经完成了,呃,在log in这块呢,Controller层代码就已经完成了,完成之后呢,还缺三个方法没有实现min service log in啊,Student service log in和我们这个teacher service log啊,那这个怎么实现呢?实现一个后面这个大家应该就会了,我先把这个呃给大大家先实现第一个啊,如果是想调用dmin service,想用admin service,调用log in,那我当前这个control里面就要组合一个,哎,我们的dmin service啊,Private admin,诶,Service admin service啊,然后new嘛,不要new,在这块来一个at auto where注入一个in service,顺便呢,我们把这个teacher service啊。
18:10
那其他的几个service都给他注入进来,Student,诶,Service student,诶,Student service,还有一个是private,呃,Teacher service teacher teacher service很好,At outwa,哎,Outwa注入进来之后啊,看至少这三个类是不报错了啊,但接下来呢,是谁报错了呢?是我们这个login方法报错H种T啊,写错了啊T好,那接下来我们到啊每个service里面呢,去添加这个log方法,去把这个log in方法来create create创建一下,创建之后呢,这个min service里面这个接口中就是这个log方法了,接口中有还不行,还得到什么呀,还得它的实现类中去给它添加一下,这里边我们再添加什么,添加这个实现一下,哎,我们什么能实现我们这个log这个方法就可以了啊OK。
19:03
OK啊。这里面要是想连接数据库进行查询的话呢,我们还需要组合一个什么呢?还需要啊用一个叫做呃,我们当前这个map对象,我们在这看看能不能直接使用啊来看这我们写成一个base map,这是我们呃基础的一个map哈,通过这个map调什么呀?调啊这个叫做select,嗯,Select什么呢?嗯,诶不是是base map哈,Base map点点掉select one,这个select one方法呢,就可以给我们返回哎,单独的一个哎查询对象了select one,然后在select one里面我们发现它需要传一个参数,传一个什么参数呢?这个参数是一个query rapper,一个对象,而这个queryper呢,就代表我们的查询条件,我们的什么查询条件往这里我拼成一个query挖对象,然后给他一传就可以了,那怎么拼成条件呢?是这样的。来一个query vaer to query vaper啊泛型呢,我们指定成啊ad ain啊返回的是一个的命对象,然后来一个queryper等于new一个queryper好,我们的判断条件是呃,用户名等于我们在这个log in里面啊放的这个用户名,密码呢,等于我们这个phone里面的个用密码,那我该怎么写呢?该怎么该拼这个条件呢?快waper点先拼成个EQ,就代表是一个呃等等值的一个判断,判断什么呢?判断这个name等不等于一个什么值,判断的为什么是name呢?看这个database里面啊,在里面它是判断这个列的值是不是某一个值,并且是这个password是不是某一个值,所以呢,我们在这块应该这样写啊,这个name是我们数据库表里边这个列的名字name啊,它等不等于什么值呢?等不等于我们这个log in form.get use name。
20:40
这是拼上定义条件,接着就是快up,再拼,拼一个什么还是一个等量查询哈,呃,等值判断,判断什么呀,判断我们这个password,哎,Password它等不等于什么呢?等不等于我们这个logging form里边的这个什么,这个password,哎,如果相等的话呢,哎,相等的话呢,就会找到一个,这两个条件如果都满足了,就会给我们返回一个什么,就会给我们返回一个的in,那我们把这个quary rock呢往这一放,哎就OK了,那么这个select one就会给我们返回一个的in。
21:08
那我们再把这个德命呢,继续向上返回诶就可以了,在处理数据的时候还有个小信息,还有个小细节需要注意一下,在这个数据库之中,数据库之中我们存的是密文啊,是用MD5进行加密这个密文,呃,而我们在这个。嗯,这里面判断的时候呢,这个log跟form.get get password是我们用户在页面上输的个秘,是一个铭文,我们需要把在这块把这个铭文转成秘文,再跟数据库去对比,要不然呢,它是找不到的,在这调MD5 MD5amd5点,哎,这是什么玩意,MD啊,这个五啊五怎么放不上去呢?啊能放上去点呃,Incryp就是把后面这个呃字符串呢进行一个加密,加密之后呢,转成一个密文,然后用密文跟密文去进行对比,才能够对比得到。那好,那我们这个admin service itl就已经搞定了,搞定之后同样的再回到这来,你这个log给你搞定了,下面这个log你搞log给你搞定了吗?也没有来再创建一下,创建一下学生这个log音啊,把这个一样的代码再给它,哎,呃,类似代码再给它写一遍,还是在这再实现,哎,这个log,哎,OK。
22:14
这边操作也是一样的,先准备一个。Query rapper,然后这个时候呢,查询条件返回的就是一个student了啊student queryper等于你有一个quary rapper,好写完qua up之后呢,开始拼条件quary upper点第一个也是一个等待条件是用户名等于什么什么或者是并且密码是等于什么什么,也是一个EQ啊EQ呢,我们看一看学生这个里面来,诶他这个用户名市场的用户名也是name,然后这也是一个pass座了,也是一个name和pass座了,是吧,那在这接着写它的name,嗯,等于什么呢?等于这个logging logging for里面这个get,哎,Usename啊,然后呢,它这个嗯,他这个password。
23:07
嗯,等于什么呢?等于这块也要把这个密码进行一个啊加密啊,来一个MD5.type,再从这个login four里面点get username,嗯,P好条件之后呢,再用这个base map点还是一个select啊,Select on select one啊,然后再把这个query rapper呢给它一放,它我们返回一个死student对象,我们将这个对象继续向上返回,哎,就OK了,那这个呢,也就搞定了,还有一个没有实现,就是在这里。你看我们这个T这个log也是一样的,来创建一下到它的实现类里边呢,对这个方法来进行一个重写来,诶诶不要抛。实现方法,实现这个log方法还是拼这个query rapper,我们看看teacher表里面这是啥?也是name和password是吧,那好,那接下来我们就来实现一下啊。在哪去了?这呢,Teacher so in,还是来一个que vaper,嗯,范型写成一个t teacher。
24:11
Query vaper等于new一个query,诶,Vaper,然后再来query vaper点啊,等第一个等值条件name,哎,等于log form.get哎,Usename,第二个corwaer.equal passss password等于什么呢?等于这个MD5来加密一下,点and t login form.get password加密之后,然后再来,诶,再来啊,呃,用base member.select select one。把这块rapper一传,它就会给我们返回一个teacher对象,然后我们再把这个teacher对象继续向上返回就可以了啊,那好,那整个的这个log in的这个功能啊,从前端的后台基本上就都已经实现了,动静实现之后呢,我们可以在自己这个项目中呢给测一下哈,来重新启动一下我们这个项目看一看,哎,我们这个log in这个功能有没有完成。
25:18
这是我们自己的项目啊,我们自己这个项目这样的端口号不是9002,是一个9001,那我再来一个local host9001 9001 OK,接下来呢,还是在这把这个控制台打开,F12控制台打开,打开之后呢,来还是一个的in的in放进来了是吧?验证码呢,我先给它输入错了,来一个ABCAFGH是吧?然后管理员来一点登录,诶你看提示有,呃呃,请小心,嗯,请小心输入后重试这个油误怎么就两个字啊,怎么就两个字来看一看口里面。嗯,用户名啊,诶看上面啊。哦,我这块就少数了,这是验证码啊验证码但也确实是走了它了是吧?哎,没问题啊,我一会儿重启之后,这个这个这个文字就会正式的生效了啊再回到这来,我们把这个密码写错了,我的密密码写错了,AAA写错了啊然后验证码这回都写对啊,这是一个ZN4XZN啊4X,然后再来走,诶诶提示我,你看用户名或者是诶密码有误就OK了啊嗯,然后再往下,再往下这个查不到,查不到是个什么情况呢?就是这个用户名和密码确实查不到,嗯,这个还不好演示,写成一个查查查查查查查查查吧,然后这个再来一个,呃,YWBFYWBF啊,然后再来得走。
26:41
嗯,还是用户名或者密码有误啊,它这个提示还是挺具体的啊,那下来我们输入一个正确的用户名和密码,还有验证码addin。我得病,哎,然后这个验证码,嗯,9q he 9q he,然后以管理员身份来进行登录,我们把下面这些请求全都给删掉哈,再来点登录,登录之后呢,这块一个request field withs 404,这是怎么出现404找不到资源了呢?原因在这啊,并不是我们这个log in不好使了,你看这个log in这块还是没问题的,是下面它紧接着发送了第二次请求get info,这个get info还没实现的,哎,所以呢,这个get info搞了一个404回来是吧,但是我们看这log in它请求的信息,你看这个对应上了是吧?哎,请求这个UI对应上了,然后请求的信息呢,也也带上这些信息了是吧,这是我们的,呃,这个form表单里面一个请求体的一些数据响应回来是啥呢?相回来一个格式,哎,也是我们这个之前的经,嗯,之前的这个,呃,这个编写完这个项目测出来那个结果也是一样的是吧?哎,那我们这个log in校验登录这个功能就已经搞定了啊。
27:41
那紧接着我们就要处理一下这个get in符了,这个get in符要干什么事呢?干的事情是这个要根据你提交这个token啊,解析回来你当前啊这个用户是谁,然后呢,再根据这个ID去找一下你对应的用户,哎,再把用户信息呢和你的用户的类型哎封装成一个结果,再向我们的浏览器进行响应,响应之后呢,浏览器就会根据这个us ta来跳到它合适的应该到的页面了啊这是我们下一步的一个操作。
我来说两句