至此,算是结束本篇文章了。这是第三次修改本文,并没有修改整体框架,主要是细微的排版,和修改过去记录不太准确的地方。
简单的说一下还有哪里没有介绍。
关于 Application。 如果稍微看过 expross 代码的人都会发现,Application 并不是像我写的这样是一个类,而是一个中间件,一个对象,该对象使用了 mixin
方法的多继承手段,express.js
文件中的 createApplication
函数算是整个框架的切入点。
关于 Router.handle
。 这个函数可以说是整个 Express 框架的核心,如果理解了该函数,整个框架基本上就掌握了。我在仿制的时候舍弃了很多细节,在这里个函数里面内部有两个个关键点没说。一、处理 URL 形式的参数,这里涉及对 params
参数的提取过程。其中有一个 restore 函数使用高阶函数的方法做了缓存,仔细体会很有意思。二、setImmediate
异步返回,之所以要使用异步处理,是因为下面的代码需要运行,包括路径相关的参数,这些参数在下一个处理函数中可能会用到,这是一种常见的异步迭代手法。
关于其它函数。 太多函数了,不一一列举,前文已经提到,涉及的细节太多,正则表达式,HTTP 协议层,nodejs 本身函数的使用,对于整个框架的理解帮助不大,全部舍弃。不过大多数函数都是自成体系,很好理解。
大佬,给点反馈?
平均评分 / 5. 投票数:
很抱歉,这篇文章不能帮助到你
请让我们改进这篇文章
告诉我们我们如何改善这篇文章?