该连接Nodejs学习笔记中间件模块(2)

该连接Nodejs学习笔记中间件模块(2)
首先,开放分析

大家好,今天的文章主要是关于连接中间件和相关中间件的分析。

介绍了使用方法和使用方法,这也是我的兴趣所在,以便读者对它有更深的了解。例如,如果分析阶段有什么问题,请赐教。

好 uff01the旧规则让我们去研究的课题。先看一个例子,结合分析的介绍,如下:

复制代码代码如下所示:

var =要求();

VaR的应用= connect.createserver();

app.use(connect.static(__dirname + /公共),{

MaxAge:0

});

app.use(功能(REQ,RES,下){

res.end(你好世界!;

})

听(8888);

U3000

二、逐行分析:

(1),在第一行,连接介绍了模块和HTTP | HTTPS服务器通过连接到HTTP服务器提供的所有功能。

连接中间件允许您以多种方式创建服务器。

复制代码代码如下所示:

VaR服务器= connect.createserver(

Connect.logger()

connect.static(__dirname + /公众)

(1);

var =连接();

app.use(功能(REQ,RES){

res.end(你好,笪雄俊!;

听(8888)};2
那么它是如何做到的,看看源代码:

复制代码代码如下所示:

module.exports createserver出口= =;

exports.createserver = createserver;
安装createserver对全球的出口,并扩大createserver属性安装一遍,为了与本土写作兼容。

这是我们在普通发展中可以借鉴的理念。

(2),看第二线连接。createserver

复制代码代码如下所示:

VaR HttpServer =需要('。 / HTTP服务器),

httpsserver =需要('。 / HTTPS服务器);

功能createserver(){

如果('object= =类型参数{ 0 }){

返回新的httpsserver(参数{ 0 },array.prototype.slice.call(参数1));

{人}

返回新的HTTP服务器(array.prototype.slice.call(参数));

}

};
httpsserver 和HTTP服务器基本上是相同的,就像httpsserver封装的HTTPS。在createserver 案例

(3),继续看第三线app.use()

复制代码代码如下所示:

VaR服务器=出口。服务器功能的HTTP服务器(中间件){

this.stack = { };

middleware.foreach(功能(Fn){)

this.use(FN);

},这个);

http.server.call(这、这。处理);

};
*从服务器原型继承。

* /

服务器。__proto__ = http.server.prototype原型;
连接是从HTTP服务器继承的原型。

通过connect.use(路线、处理)添加中间件的每一条路,这些中间件柄将与路线在堆栈

遍历堆,找到对应于路由的句柄并执行句柄。如果句柄最终调用下一个(),它将继续搜索并执行下一个匹配句柄。

通过封装句柄

(4)最后,请看听(8888)。它是做什么的

简单地说,通过继承底层服务器对象,监听的功能将用于监听特定端口。

服务器。__proto__ = http.server.prototype原型。

以下是所有connect.js源代码。为了节省空间,所有的注释都被删除了,如下所示:
补充:

复制代码代码如下所示:

Fs.readdirSync(__dirname + /中间件)。ForEach(功能(文件名){)

如果((测试文件名)){

变量名= filename.substr(0,filename.lastindexof(' '));

出口。中间件。__definegetter__(名称、函数(){(){

返回所需(/+名称);

});

}

});
然后将中间件对象导出的方法定义为中间件对象,该中间件直接在中间件文件夹中加载js文件模块。

使用:exports.utils.merge(出口、出口。中间件)这句话的中间件方法直接出口。

三,总结:

(1)理解源代码的设计意图有助于最大限度地提高应用程序的收益。

(2)在查看源代码时,了解过程,然后修改语法细节。

(3)巧妙地实现源代码,而不是为设计而设计的过渡设计。

(4)明天继续分析相关中间件,不断更新。

tag:中间件模块连接学习笔记电脑软件

相关内容