对于express中间件的理解

对于express中间件的理解

关于express中间件,官网对它的阐述是这样的:“Express是一个自身功能极简,完全是路由和中间件构成一个web开发框架:从本质上来说,一个Express应用就是在调用各种中间件。由此可见,中间件在Express开发中的重要性,因此这里我们就专门来了解一下中间件。

中间件可以分为以下五种:

  1. 应用级中间件
  2. 路由级中间件
  3. 错误处理中间件
  4. 内置中间件
  5. 第三方中间件

一、中间件结构

1app.use[path]function

path:是路由的url,默认参数‘/',意义是路由到这个路径时使用这个中间件

function:中间件函数

这个中间件函数可以理解为就是function(request,response,next)。

例如:

var express = require('express');

var app = express();

app.listen(9000, function () {

  console.log('listening 9000')

});

app.use(middleware1);

app.use(middleware2);

app.use(middleware3);

 上面代码当中的middleware1middleware2middleware3就是中间件,我们使用app.use,就是在使用这个中间件。所以说中间件的使用方法就是 app.use(middleware) 请求来了之后,会依次通过各个中间件进行处理,处理完成之后,就next(),把控制权交给下一个中间件,到了最后,我们就可以很好的使用路由了。

总的来说中间件的使用就是

  app.use(fn); //中间件的函数

  app.use("地址", function (req, res) {

  // 业务

  })

二、中间件的理解总结

  浏览器向服务器发送一个请求后,服务器直接通过request.定位属性的方式得到通过request携带过去的数据(有用户输入的数据和浏览器本身的数据信息)。这中间就一定有一个函数将这些数据分类做了处理,已经处理好了,最后让request对象调用使用,对的,这个处理数据处理函数就是我们要说的中间件。由此可见,中间件可以总结以下几点:

1、封装了一些处理一个完整事件的功能函数。

2、非内置的中间件需要通过安装后,require到文件就可以运行。

3、封装了一些或许复杂但肯定是通用的功能。

原文地址:https://www.cnblogs.com/111zq/p/10264017.html