00:00
第五七关咱们书接上一回,咱们再来看一下呀,我们的小程序到serve维类似的通路中的下一部分,我们来创建一个web函数啊,就像课文之前说的,哪一个都行,白猫黑猫抓住耗子就是好猫啊,列位怎么写那都不是问题,最终只要能把这条路给走通了,结果走通了就可以。但现在咱们要给大家来介绍它怎么去用啊,点击创建web函数,然后在这里呢,起一个名字,咱们换一个名字呢,比如说叫get list哈,好了,Web函数get list北京选择那个老版本的node啊,这样的话可以在这个环境下使用咱们最新版的node GS的编辑器啊,VSQ的编辑器,接下来在这里大家可以看一下上传项目前请修改端口号为9000,诶,咱不是用在线的嘛,咱这样分两步来讲,先讲在线版的,再讲本地版本的,所以我这样。
01:00
我现在啊,就是按照咱们默认自动在线编辑器,我相信它自动编辑器这种应该会给我自动改成9000,所以我不妨可以看看代码,那代码默认都创建出来了,你可以看一下这是不是基于X的项目呀,也就是说咱们这种选择呢,Web版之后它直接给我用node GS,好像给我写了一段能够完整独立运行的段,Node GS代码里看见了吗?X express.get然后X listen间9000,也就是说你啥也不用改,在线版变音器啥也不用改,直接用就可以了,拍进S中所有的依赖对吧?都在这里啊,Cookie啊,Express等等的模块啊,所以这就是咱们的基于X express的这样一个项目而已。另外要是不知道X express,你也可以啊去使用一下原生notde g s啊,当然在这里建议你使用X express,而且这块它有一个什么boot stripp的一个启动方式,Nude ap.gs。
02:00
我认为这段代码一会儿要部署完的,准能工作呀,是不是一运行它会自动的按照这个来启动咱们的项目,诶启动完了之后,咱们只要来访问斜杠,它就能够直接给我们返回hello word,哎,我们就可以来测试了,是不是啊好,咱们继续往下去走了,在这个地方,呃,触发器你可以直接用它默认触发器,咱们试一下,看用默认的好不好用不行再换自定义呗,啊默认触发器咱们默认,这些都默认就行了啊,免健全的点击完成这么一个接口咱们就写好了,写好之后就开始部署了,诶部署完了之后,咱们就可以在咱们的界面中啊进行一个测试,哎,在咱们函数管理中,哎,等着这个创建完了,好了,触发进也完事了,这次吧,在函数代码这里,咱们可以看一下来,直接点击测试这个地址返回值,看看它好不好用呀,等一下这个结果啊,我们可以看一下返回来,Hello word,那我直接点击这地。
03:00
值是不是也能拿到这样一个值呢?哎,这个值咱们通过小程序端进行一个调用,它是不是也是那么零呢?你可以测试一下,这是咱们诶默认生成的这样一个URL地址啊,点击之后测试hello word返回,诶可以返回普通字符串对吧?哎,就一个普通字符串啊OK,这个是成功的,那接下来改代码列外,你也改成跟我们之前所说的是一样的,可是我要用,哎直接在这里用require anxious,利用这个anxious请求,也就等你请求斜杠咱们的猫眼这个路径的时候,或者我在这里留着原来的就是斜杠啊,再来一个斜杠猫眼这样一个路由的时候,我们再来去请求我们的猫眼的这个数据啊,我们可以啊,基于之前的那段猫眼代码在哪卷代码把来把卷代码给它复制一下啊在这里哈,这是咱们最简单的JS调用啊,点Z回。
04:00
这个车吧,点Z,哎,Res这样的话呢,我们就会往前端返回,注意这块,这个往前端的响应,对叫res了,你这个啊,就叫result吧,别冲突了,所以res.send result.data来列位看下这个代码可是这么想的哈,呃,等你请求斜杠的时候,我还返回hello word等你请求斜杠猫眼的时候呢,我返回的就是呃,请求猫眼真数据之后的那个result.data给咱们的前端扔过去,就在这种情况下,如果我直接让他工作来点击部署列外来,你可以想一想,在这个过程中,你赶紧的跟我想一想,会成功还是失败,成功的啊,弹幕中扣个一啊,失败了弹幕中扣个零,你看咱们这种的强互动模式对吧?好,部署完了,我点进一个测试,大家可以看到这个结果是什么呀,那咱们来看一下成功还是失败呀。你想想那个安。
05:00
就是那个模块他安装了吗?谁知道他安装了呀,所以你会发现根本启动不起来,你会发现在这里他说什么呀,失败在这个初始化container,请确认这个模块,请认这个container能够被启动,在本地能够被启动啊,你看这块好像这个测试报出来这个错误让我很迷惑,我可以在日志查询中再查一查,刚才那个请求到底是为啥失败了呢?啊,这个报错就很明显了嘛,安四啊,不能发现,所以你会发现啊,这个地方跟咱们之前也一样的,就是我用的是web函数,Web函数它很明显就是一个可以独立运行的一段代码,它不像咱们的那种事件函数,那种事件函数就是一个回调将来被调用的一个函数,而这种是一个完全可以在本地端运行的,所以你本地的环境你没安装呀啊,所以在这里也一样的,那既然有拍点这一次呢,咱们就可以在这个地方直接把那个啊。
06:00
给它拿过来就可以了,我记得咱们刚才好像安装的那个安四版本是0.26是不是啊,哎,在这里我也一样来冒号我们这个啊波浪二,然后0.26.0保存完之后,另外千万别忘了哈,一定打开这个开关啊,谁要忘了安装不上去,只能找一个角落嘤嘤的哭了起来啊,点开自动安装依赖开关之后,再重新点击部署,你会发现这个时候我们弄的猫叫中啊,只要你部署成功了啊,只要部署成功了,弄的猫叫中就会生成那个那个模块,它就下载好了呀,哎,下载好了之后,诶,咱们再重新的进行测试就可以了,你看这么慢呀,事出反常必有妖,哎,就说明它就在那儿下载和安装,但这么慢是不是让人等的很着急啊,行了,下载完了吧,行了,在最后来做一下这个测试,咱们那个安那个模块也已经给下载好了也。
07:00
已经给安装好了,你看这次就通了嘛啊hello word,大家说这不对,Hello word呀,因为咱们路由中写的嘛,你鞋杠默认鞋杠的时候是hello word斜杠猫眼才是这个数据,所以你可以在这里测试么?加上一个什么路径,路径加上这个什么呀,猫眼儿,然后点击这一个测试,咱们看一下加猫眼这个路径之后返回的是不是猫眼这些数据啊,就明没有问题啊,点击这一块还测试猫眼儿对不对啊,你再放在小程序端去做测试,诶谁又能奈我何?运行之后最终这个结果还是咱们那段数据,所以你看在线这种web函数的方式啊,其实跟咱们事件差不多,就是它这个环境的话呢,是一个完整可运行的notde环境啊,你看这是这一块,好,接下来咱们再来看一下哈,如果我要在本地来玩的话呢,你会发现这种外部环境太方。
08:01
变了,因为它本来就是一个独立可以运行的no的环境,所以咱们在本地的玩法是这样的,怎么玩呢?有人说科们我知道了,在本地一个目录下徒手创建一个路的运行项目,然后再开以去用,对不对呢?这个流程的话呢,只有走过的人才能跟你说是不对的,因为科隆走过啊,客人曾经呀,在调用这个接口的时候呢,啊,老是不成功,我就是按照什么呀,现在本地创建了一段一模一样的代码,我也在本地把X的依赖都下载好了再上传,最终它不好用啊,这是头大呀,一个人捧的金瓶梅,看不下去,太难受了,为什么呀,是因为你会发现哈,它这个呃,Node中的web这个函数,它需要依赖的模块是node所有的这些模块,你会发现这个node模教中咱需要S这些东西咱都不需要,但是它在这个环境中是需要的,所以这些模块的话呢,你在本地也得有这些。
09:01
模块将来上传的话,要带上这些模块的,要不然外B函数不会工作,所以正确的在本地流程是什么样呢?也就说你将来是要把你本地代码传上来,对不对?你得先把它创建出来这个空壳呀,先下载到本地,然后在本地再安装你各种其他的模块再去测试,测试完了都没有问题了,再传到咱们的这个云空间来就行了。好了,这个流程的话呢,是怎么样的,你得先初始化一个我们可以用的这样一个模块,当然你可以在之前这个基础上,这不盖到类似的基础上吗?下载下来,诶你把整个这块下载下来就可以了啊,我们可以在这直接点击这个什么下载代码包,它会把整个这个模块中所依赖的所有的模块啊都给下载下来,诶,将来你再传回来不就可以用了吗?诶一定要这样一个流程对吗?诶所以在这里在文件夹中咱们显示,然后啊,你把这块代码呀,咱们。
10:01
们给它copy到我们的目标文件夹下来,诶,还没下载完吗?来,在文件夹中打开,咱们把get list ctrl c,诶,我给它拿到我们这个目录下来,咱们找到我们的这个目录下,好给它复制啊,粘贴过来,我把这个模块给你解压出来就行了,在当前文件夹下,咱们来一个解压到这个文件夹下。好,解压下来了,你打开之后,你会发现你所有的依赖都在这个地方来,你可以在这个基础之上的话呢,来做你自己的开发了,你看客人假如说咱们假模假样的自己做开发啊,就是我现在要在本地先玩一玩好不好用,所以我用我的NPM,我得启动这个项目呀,我记得在package.jason中是不是有咱们的启动方法呀,或者直接用APP啊,直接node app1回车之后接听的是9000,你会发现这个项目是完全可用的状态,Localhos的9000,哎,然后这就斜杠猫眼儿,哎,你就当呀,现在这个环境啊,是一个完全在本地可以用的啊,那接下来的话呢,我现在要改代码了,比如说我现在要说,诶,我要把这个刚才解压的这个文件拖到我们的Vs code中来啊,我们在这里把这个地方给他改了一下代码猫眼二,然后我在自己的本地测的非常成功了,我改完了嘛,我自己本地我测一下。
11:25
啊,咱们就做一个测试,客户要表达的意思就是这个可以在本地完整的做测试,都好用了,你再往云端去发呗,Look靠后的9000斜杠猫眼,你给它改成个二,因为行就哇好用猫眼肯定就不好用了,对不对,这是我在本地做的测试,都没有问题的,所以本地都通过了之后,接下来再用刚才那一个什么,我要创建一个云函数,点击新建,新建的时候从头开始与web函数给它改成一个get list2是一个函数运行环境还是咱们的老版本的这一个node,然后这次用的是本地上传文件夹,点击这个上传,选中咱们这一个文件夹,哪一个文件夹呀,这里面这个get类似文件夹啊,里面老多依赖模块了,985个,挺吓人,但是呀,你也只能这么说。
12:26
款没有办法啊,因为这个web函数它依赖那些咱们在本地可能不依赖的模块,但是它依赖,所以你就得下载它,下载完了修改完再去传啊,所以这样来说的话呢,触发器还是默认的,最后点击完成,咱们来看一下此时这个效果是不是依然跟刚才的是一样的,也可以正常的运行和工作呢,咱们静静的等着它部署完成,还有它的这个啊,触发器创建完成好了,完事之后咱们立即跳转列外,你刚刚创建的一个叫get类似的二的这样一个web云函数啊,它在这里呢,咱们可以进行一个什么测试功能,看看调用一下测试啊,还是这个路径的话,咱们点击测试之后,这一次是没有猫眼的这样一个测试,最后这个返回结果是好用的啊,你要来一个什么猫眼,诶,注意咱们给改成二了哈,但是我就故意的测试这个。
13:26
斜杠猫眼的这样一个路径,它返回是404NOT found嘛,猫眼二呢,诶我们改完了代码,最终这个结果的话呢,就是我们猫眼的真数据的代码,它就好用了,所以一样的你在这里测试也好用,你放在小程序端你去测试啊,也一样的好用啊,所以这就是啊,咱们这一个web函数,那可能在这里哈,对于B函数还是要做点说明的,什么说明啊,就是你在创建这种web云函数的时候,一定要保证咱们本地开发的这个模块呀,列外。
14:04
它一定录的模咒中是包含咱们我们的这个云函数里面所有的模块的,所以你的流程应该是先初始化一个空的web函数,在你的腾讯云上,你把它下载下来,这个包它是完整的呀,然后你再开始写你自己的代码,你爱怎么写怎么写,按安装安个设再安装,然后你可以在本地都所有的功能,你写了七个接口都好用的情况下,我写了十个100个接口全都好用的情况下,全完事了,看你再把整个这个模块呀,哎,上传上来,然你用的再次咱们新建咱们这种web函数,再把所有的都上传上来啊,你可千万不要在本地创建一个,呃,普通的node,你说在本地好用怎么上来不好用,因为你本地中它那些模块是没有的,它也不会上传上来,所以咱们一定是先要下载咱们云端的这个完整的弄猫叫的,然后在此基础上再改我的APP啊在。
15:05
写其他的自定义模块呀,哎,最后再统一的新建一个新的web函数,再把整个的弄的Mo全部呢给上传上来,诶这样的话呢,咱们才能够工作,那这样的话呢,我们一定啊按照这个流程来啊,我们的云函数啊就创建完了,而我们在这里的话呢,是基于我们的这个test的命名空间,创建了这么几个,前面三个是咱们讲的这种事件函数,后面两个是咱们的语音啊外部语音函数,哎,都测试完成了啊,所以最终啊,我相信你列外也可以啊,通过科这种方式啊,一步一步的啊,首先从事像函数来,然后再到咱们的这种啊web函数,事件函数,一个它只能响应一个接口,而咱们呢,这种web函数,我只要里面配好路由,对吧,斜杠A,斜杠B,斜杠C,每个分别不同的接口都能响应,而且它能够很好的做咱们的。
16:05
本地的一个测试功能,所以我们的web函数在咱们web开发中可能使用的几率啊会更高一点啊,然后再就基于不同环境的话呢,上传上来的,千万别忘呢,那种依赖包的一个安装过程,好这是咱们的serve类,咱们小程序端能够成功的通过腾讯云提供的serve类似咱们部署的云函数实现这种前后端呢交互,那将来我们在利用我们的思维类在打通我们腾讯云的数据库,我们真正能够做到从小程序端发了一个请求,到了云函数,云函数去连了腾讯云的数据库,哎,往数据库里面增删改,查了一条数据,然后再响应给咱们的云函数,再应给咱们的小程序端,完整的可以通过小程序到云函数到咱们数据库的一个啊全站式的操作方式。而这个过程中咱们。
17:05
只需要通过云函数来使用这些服务,用这些访问后端的服务,是不是我们的云函数的出现可以让咱们开发者啊,一个前端开发者啊,成为一个全站开发者更加方便了,大前提是你至少得懂云函数的它一个环境,你是Python还是node对吧?这都可以。好的列位咱们这一小节的内容啊,先到这里,大家也可以赶紧的申请腾讯云创建自己的函数服务,到底是实际服务还是web服务啊,你列为可以啊,自行的选择好这一小节咱们到这儿。
我来说两句