00:00
事情来看一下需求。啊,这个呢,刚才说过了啊,有两个文件,一个是用来改端口的,一个是用来去注册路由的啊,启动并访问刚才也说了是吧?好,下面我们来去做一个后台的一个简单的编码并测试,这里面写个需求,这个需求说的还挺多的啊,我们来看一看啊,我们后台应用运行的端口指定为4000搞定没有。搞定了是吧,只是说我们这个现在啊,大家看想想看,我们现在是4000嘛。也就是说,我们现在访问4000行不行?不行,对不对啊,不行,是因为我们改了以后吧,它得重新什么运行启动,这也是我们要解决的一个问题。他每次改一次都要重新启动。那还叫智能化的应用嘛,对不对,你还脚手架创建的项目了,最好是能够去什么自动的,一旦我改你就能发现,发现后就重运行,这是最好的,能不能啊,我们后面会实现这样的效果了。
01:13
好看一下啊,下面是我们真正要做的一个功能啊,提供一个用户注册的接口,那也就是说我们现在要干嘛去。是不是注册一个路由,也就是说我需要在这里面注册一个啊,路由什么样?路由用于干嘛?用户注册啊,这两个注册不是两个不同的概念啊,这个用户注册是一个代表一个功能,呃,这个注册相当于是定义一个路由。对吧,那这个是要定用户定义吗?不是就是用户注册。能区别开来吧,能啊,要能区别开来好。那下面我们看一下需求,把这些需求都拿过来。照这个需求写呗,这个很关键啊,根据需求去写效果,写代码是大家最需要做的一件事情。
02:10
啊,其实最好是大家自己看着自己写,当然因为是前提是,那我就大家自己写一写。首先啊,他一上来就说了两个很重要的东西。我这个路由的路径是多少对吧?我的请求方式是什么?就我处理请求的方式是哪一种好来写。谁来去注册路由?Root root是什么东西?对啊,很重要,你一定要把这个给理解透啊,翻译到位,路由器注册路由这不很直接的吗?前端我也是啊,对不对,在路由器里面是不是定义路由啊,一样的啊root点。Post,诶很关键是吧,因为我们要处理的是post请求,第一个参数是什么。Pass,而他要求的pass是不是这个,那就应该写它。
03:05
没什么,没问题,来下面写什么?回调函数,而这个回调函数用来干嘛的?我们说它有两个处理请求,返回响应,哎,这里面我反复跟大家强调两句话啊,处理请求返回响应啊,那这里面就有两个对象,一个代表请求,一个代表响应,Req和什么res,其实还有一个咱基本上不太用next,我们就不写了。处理请求返回响应,好,这里面做的事情基本上就三步,这个啊,回调函数里面就三步。啊,无论你怎么写,整体的步骤永远是三步,第一步获取请求参数,第二步处理啊,第三步返回响应,这个能不懂啊,其实这里面其实最难的肯定是第二步。
04:07
可难可不难,你要不难,那很简单,一步搞定是吧,你要难受,那是非常难的,可能要写很多代码。就后台的业务逻辑嘛,对吧。第一步和最后一步应该是比较轻松的。来,那我们就先来去做第一步,获取请求参数,首先你得知道。请求相关的数据在哪里?在IQ里面,肯定在这个里面,首先你得确定是在这一个对象里面对吧?而我要返回数据,肯定用它来去返回。这个不懂,因为一个代表请求,一个代表响应嘛,你先一定要搞清目标,先别想什么方法,你先搞清目标啊,接着下面我们要说,我们要去获取post请求的两个参数,一个叫user name,一个叫什么password。
05:01
那post的请求的请求参数放在IEQ的什么属性里面呢?Body,那如果我是一个get请求了。参数啊,OK,是不是query啊,Query,为什么query啊?还记得不?我们参数有两种,一种叫查询参数,一个参数其实不一定是query,也可能是per。对不啊,都有可能,就看你怎么方式传过来的,是问号后面带的参数还是路径里面带的。能懂吧,啊,这个东西不要计时,你只要把我们前面讲的那些东西搞清楚就很好搞了啊好来,那我们需要从啊我们的这个里面IQ点什么body里面取出user name和什么password,那我怎么能非常速的把它们俩都取出来了,结构对很好,这个时候结构非常有用。
06:01
不然的话,你得写两条语句对不对,写一下都比较烦啊,User name啊,按照他要求啊,别简写,他说user name就是user name,你不能写name。啊,再一个pass的,我有意的把它写的名字比较长啊,这个时候它不识别很简单。啊,没有设置是吧,没有设置。好,这个设置就不要设置为它了。那后台我们没有写这个代码对不对啊,ES6就得了,那前台应用还是要设置为GSX对吧。好来啊,这是我们的第一步搞定了,那下一步是不是处理这个处理就是后台的一些逻辑了,那后台逻辑我们得看一看啊,看看怎么样去搞啊。他说明了一下,Me是已注册用户,也就是说后台有一个用户不能再用了。叫me其他用户都可以用,这个能不能懂能懂是吧,那也就是说我们这个处理啊,最终的结果有可能是成功,也可能什么失败。
07:07
能不懂,那什么时候成功,什么时候失败呢?其实非常简单,就我们现在的逻辑非常简单,只需要判断什么用户名,它是不是什么。Admit。那么到现在我们不用去保存啊,我们也不用去操作数据库,先简单的搞一下就行。好,那我干一个什么事情了,判断呗,是吧,说user name等等于什么me吗?对吧,这个如果等于我们必然是要什么,是不是不行啊。能不懂啊,那这个注册的啊,最后是不是失败呀?啊,这个处理就是不能成功啊,注册会失败,呃,下面else了,那自然我们这里搞得很简单,就是你如果不等那就成功了,这个能不懂。
08:05
啊好,那也就是说啊,你成功了是不是要返回一个成功的响应,失败了得返回一个什么失败的响应。而且他这里面告诉你啊,如果成功了,你应该返回这样一个结构。好,这里面说一下,大家看着啊。我们这个返回的数据都是什么类型。对象,而对象里面总是有一个特别的属性叫扣的,那不一定叫这个名字啊,但可能很有可能有这样一个类似名称的一个意义的名字啊,这一个code的就是用来代表你的这个数据是成功的数据呢,还是失败的数据,那也就是通过这里看出来,零代表什么成功,而其他的一,比如说一也可能是二啊,代表什么失败。真懂吧,那也就是说我这边啊,是不是要执行我的第三步了啊,返回响应吗?不是。
09:06
只是说我这个响应是一个什么失败的响应,对不对,而下面也是啊,下面也是返回响应数据,一样的也是返回响应数据,只是它什么成功的。N到吧,那通过谁来去返回响应啊,Is怎么返回呢?剩的最简单对不?而我们发送的是一个什么数据呢?刚才说过了是一个什么对象,对象里面现在的扣的应该几。一刚才说过了,我们失败用一扣一来代表失败,对吧,失败你得告诉他一个错误信息吧,要不要要的吧?啊接着我就写了一个message冒号,诶使用过什么已存在。能看懂吧,啊好,那下面我这里面该怎么办呢?我是不是也要返回一个对象扣的因该为几啊零,因为我用零来代表成功对不对,那成功的时候大家想我相当于是要把这个用户保存呢。
10:17
是吧,我这里面按道理来说,我这里面是会保存用户的,保存用户是不是用户会多一个很重要的东西,就是ID或者下一些ID。是不是都有可能啊,有可能那也就是说么意思,我会返回一个。深层的U着也就我这里面啊,而且我的有着用什么存呢?用date来存。这个还有印象吗?那个时候前面我说过啊,跟那个我们action携带数据的时候,我们有一种选择,可以把所有数据都用date属性来存。是一个思想,其实是一个啊,当然你也可以不用这种思想,你可以说这里面写优是吧,里面搞优值,这是不是也可以也可以啊。
11:02
只是一种选择的性啊,好,那也就是说我现在是不是来看它,光有这个user name和password不够。对吧,还要给他传一个什么ID,或者叫下方ID都行,能不懂,因为那个猫DB它是用的,实际上用的什么下方ID,这都没关系啊,意思就行啊,这里面我就简单的搞一搞啊。啊,123随便来一个。能不能看到啊,按说来说,这个时候应该保存到数据库里面去,对吧,产生一条记录,这里面我就简单的做一下,好,那也就是说到此为止,我们这个后台的路由接口已经。写好了。对吧,但是我现在能访问吗。能不能,不能,为什么不能?为什么不能?那我现在是准备去发请求去吧,也就是我现在请求能不能请求到。
12:03
不来,为什么?说到关键点,为什么?没有重启。没有重启。因为这个后台应用它不重启它不行啊,你理解错了是吧,因为啊,这个里面就是没有重启,我现在就是想告诉大家,我们现在急需要解决问题,就是我写完以后马上就想去请求是吧?啊马上想去请求,我不重启这个应用肯定是没法去请求的啊。他不知道,根本就对吧。MPM。好来下边做一下,关键问题是现在有问题,他是POS请求我用浏览器发,这这好难发呀,是吧?啊挺费劲的,怎么办呢?这个时候要用工具是吧?要用工具来,我给大家发了一个工具的,应该是feels啊postman是不是这样工具我看有的同学都打开了啊,双击就可以打开。
13:08
但第一次的时候是不是有可能要去注册呀?是吧,注册一下行没事啊,也不别怕暴露信息,你的信息早已经暴露了啊,现在哪里是啊,对吧。好好了啊,来这一上来呢,注册好登录上了以后呢,就有这样一个界面啊,原始老师这么多功能我都学到猴年马月,其实大部分功能我都没操作过,说实话啊,我们就操作一些我们需要的功能就行啊。啊,这是一个什么样的概念呢?其实至少你应该知道这里面啊,可以发请求,这个应该会吧。对吧。看出来吧,别的先不管,我至少从这里面可以发请求嘛,来这个地方啊,请求路径是多少呢?啊,对吧,Local多少4000对很好啊,4000接着。
14:11
对吧。好,够了吗?请求方式我们说过了,发请求不有三个方面吗?对吧?请求的路径,请求的方式对吧?请求的参数是不是都要去指定,而我们是POS请求,所以请求是在请求体里面的吧,来选择玻璃。听懂不好,这里面一共有这么四种方式啊,这里面要选他这样一种方式,告诉他是什么方式,是模拟表单提交。表单提交的时候是不是有post方式和get的方式啊,此时我们用玻璃,那肯定是post的方式。这里面不已经指定了吗。这个不懂,好在这个里面去指定什么呢?K和什么value。
15:05
这个时候不能随便瞎写,我们有两个是吧,一个叫什么有着类好它的值随便来一个AA可以吧,好,接着我这里面是什么password,接着来一个123。可以吧,好可以,那下面我干嘛去。那就发请求了对不对,走你。各位可以是不是给我返回了一个数据,而这个数据就是我刚才设计的数据吧,是一个节省数据,能不能看懂?嗯,这就是一个节省格式了嘛,好,那下面呢,我要去改一下叫什么?呃的me。对吧,的命再走。通过这两次测试,我们发现我们的后台接口是很好的,没有问题。对吧,这就简单的写了一个后台的小功能啊。
16:03
这有什么难度了,是不是,是不是很easy的事情啊,好,这是这个,其实这里面呢,还有一些别的方面的一些功能啊,大家看这个,你看这个是什么,这是我们后面的啊,以它为例来说一说啊,这是我们后面的硅谷外卖的view项目,就V项目,我们就要它硅谷外卖啊,它里面的一些。接口啊,一共有这么一些对吧,当我们的项目的接口我只填了几个,填了两个,我们都写在文档里面了是吧。还记得吧啊,当然我们也可以把它添加进来,要先在这里面测试,再去添加是完全没问题的啊,那如果你要新为你的,譬如说老师我们的项目有些接口,我要搞怎么搞是吧,首先要创这叫一个文件夹。这里面很多接口嘛,对吧,首先你得点它。
17:02
你说老师你怎么知道的,就是这个东西看看搞搞就会了啊,就跟那操作用QQ聊天似的,没人教你也会聊了,是不是一样啊,这地方啊,创建一个集合,说白了就是创建一个对应项目的一个集合,一个文件夹啊。取什么名字,就要看你当前要做的项目是一个什么名字,懂不懂啊,我假设我现在就要开始啊,啊点击创建,这不就多了一个吗?接着啊,你假设啊,我们呢,这边有一个接口,我想把它保存到这个里面来是吧,怎么办呢?大家看到这里面有个什么C啊,不点C啊,点什么呢?Save。啊,这里面写一下,比如说我们写一个当前的名字,默认名字叫这个这个这个没法用。给你的店铺取个名称。不叫注册吗?不叫用户注册是不是要注册用户是不是都可以。好,下面呢,还可以为你的这个接口来写一些描述说明,都没有问题啊,我这里面就不再写啊,诶这里面很关键一个这。
18:08
选择你是哪个项目的呀。能懂不?你要保存的这个接口是属于哪个项目呢?是不是T的好选择它接着点击什么C。你看这不有了吗。这样保存下来有什么好处呢?保存嘛,你说有什么好处,那后面可以读嘛,说白了我把这一个工具给它关了,是不是关了以后,后面我是不是有可能打开啊,我需要那个接口,我再看一下对不对,怎么办?打开这里面,我就不在这打开了。在这。我看很多同学有这个东西,都是一些乱七八糟的游戏啊,什么乱七八糟你也没玩过,你放在这里干嘛。你得把你需要的一些东西啊,收集好放好啊,你这样才能让你的桌面比较干净,说实话大家有的,我就看到有的人那个桌面摆满了图标,什么都是满的啊,我说你找得到吗?没事,我慢慢找。
19:09
不带这样的啊,你自己要管理好你的东西,因为作为程序员你的电脑啊,是你看家的根本啊,好大家看一下我们刚才存的有没有,有对呀,有我就可以把它拿出来,拿出来我又去发请求啊。是不是数据都还在呀?啊,要觉得这个数据不行,我再改一个数据啊,对不对,是不是很轻松,大家想如果用浏览器你能实现这样效果吗?不能吧,啊,浏览器只能发概率请求,哎,对不对啊,这就相当于我告诉大家我的理解,它就是活的接口文档。听懂不啊,你可以完全在这里面写一些描述信息都可以,都没有什么太大问题啊,啊这个啊,我们就利用它来去干嘛了,我们前面说过一个概念,我们要去做一件事情,叫测接口,对吧,我要测试这个接口,首先第一个通不通,第二个跟我们的文档。
20:12
接口文档的描述是不是一致?对不对,通了不一定对啊,记住了,只说我请求成功了,不一定对,说明他返回的数据有问题。对吧,这是有可能的啊,再一次跟大家强调一遍啊,别到了公司去了以后,让你写个功能啊,布局东西都写好了,最后数据达不到。就数据拿不到没关系,可能他本身有问题,拿不到这个也正常,你要知道哦,是他有问题,不是你有问题。对吧,嗯,好,请。
我来说两句