序
上一篇《浅谈Nodejs应用的主文件index.js的组成部分》之后,我终于了解了Node姐姐的脸,然后好像上去了。尤溪~这次让本刁在她尸体上游还不错。啊哈,YY到此结束。
主体
本文主要以组件为单位来理解主文件index.js.皮肤有多滑(~)~
既然之前已经讲过index.js的组成部分,这次就一个一个来讲。没错!本英俊的手,你怎么能放过你的每一寸皮肤!
首先,引入依赖模块
嗯.像这样:
var express=require(' express ');var path=require(' path ');var fav icon=require(' serve-fav icon ');var logger=require(' mor gan ');var cookieParser=require(' cookie-parser ');var body parser=require(' body-parser ');实际上,根据模块的字面意思。
用前端工程师的话说,代码$('#id ')。没有Jquery就不能打开attr('class ',' active ')。
用动物的话来说,没有食物你无法生存。
用本雕的话说,没有姐姐我活不下去。
嗯嗯~总结一下,依赖就是为接下来要做的事情做准备。所以,上面的“拼音”都起这个作用.
二、设置相关配置
提供该组的相关代码:
//视图引擎设置app.set ('views ',path . join(_ dirname,' views ');app.set('view engine ',' jade ');嗯.短短两行代码,胸部还是比较小的(~﹏~),毕竟Loli,啊哈哈哈。
上面两行代码设置了尝试目录,并将jade设置为尝试引擎。设置的数量取决于你想使用哪些模块,有些模块也有默认设置,但为了自己方便,肯定会设置成自己喜欢的方式。
第三,中间件
//中间件app . use(fav icon(path . join(_ dirname,' public ',' fav icon . ico '));app.use(记录器(' dev '));app . use(BodyParser . JSON());app . use(BodyParser . URL encoded({ extended : false });app . use(CookieParser());app . use(express . static(path . join(_ _ dirname,' public ')));中间件,严格来说,index.js中的每一行都是中间件。我想很多兄弟都知道中间件这个词,但他们仍然不知道它是什么意思,它主要做什么。
因此,本雕亲自着手画宇宙中唯一的一幅画:
我相信聪明人马上就能明白。毕竟本雕的画卖了能值五毛钱。
说真的:左边的大箭头指的是代码执行顺序。大家都知道Js是从上到下执行的。这里为了解释中间件,把大箭头看成水流。
水往下流的过程中,中间卡了一个类似滤网的东西,本刁突然想到处女膜是不是这样(啊呸,我的思绪又不直了。
黑色过滤器是上面的代码。中间件是主线代码执行之前、期间和之后的警察、警卫或向导。以栗子为例,使用bodyParser中间件,它的功能是解析HTTP请求的体数据,方便路由,和cookie-parser是一样的。
在图中两个过滤器的中间部分,一般是路由,负责返回客户端想要的页面。
当时眼尖的问,为什么下面的中间件是红色的?为什么要在路线之后执行?
问得好!我正要说呢。熟悉Node开发的小伙伴都知道,大多数中间件通常都是在路由之前编写的,但有时候一些不确定的错误也是无法避免的。例如,如果用户访问的页面不存在怎么办?开发版错了或者官方版错了怎么办?这时,轮到“红色”中间件了。是的,主要负责善后,一般用来处理可能出现的错误。
四.选择途径
//route app.use('/',routes);app.use('/users ',users);路由是个好人。客户端只需要发送一个请求,路由会根据请求url尽力帮你解决请求。它可以处理数据或以不同的方式返回您想要的页面(获取、发布、放置、删除.).总之,试着回答问题是个好银~其实路由也是中间件,但作为独立的组件应该更好。
动词(verb的缩写)打开服务
//启动服务http.createserver (app)。listen (app.get('port '),function () {console.log('服务已成功启动,端口为:' app . get(' port ')));});啊哈哈哈哈终于高潮了。姐妹节点快死了~(︶)
呃。好像没什么好说的,就是启动服务。好的,在打开服务之前,通过http.createServer()创建一个服务,然后调用listen()方法打开它。这样整个应用就打开了~ ~ ~本雕神图中的大箭头也可以顺利插入。进去吧。去。就这样。