express中间件的理解

参考 :https://blog.csdn.net/huang100qi/article/details/80220012

Express中间件分为三种内置中间件、自定义中间件、第三方中间件

可以与node的三种模块比较记忆:核心模块(直接书写依赖的名称)、自定义模块(需要通过module.exports 导出  require进行导入 导入的时候必须写路径)、第三方模块(需要通过cnpm install 下载  然后在通过require进行引入)。

  1. Express内置中间件

express.static 是Express目前唯一内置的一个中间件。用来处理静态资源文件.

         2.Express自定义中间件

中间件使用时的第二个参数是一个Function(req,res,next)

Req: 当每个请求到达服务器时,nodejs会为请求创建一个请求对象(request),该请求对象包含客户端提交上来的数据。

Res: 同时也会创建一个响应对象(response),响应对象主要负责将服务器的数据响应到客户端.。

Next: 最后一个参数next是一个方法,因为一个应用中可以使用多个中间件,而要想运行下一个中间件,那么上一个中间件必须运行next()。

         3.Express第三方中间件

常用的第三方中间件:

body-parser 解析body中的数据,并将其保存为Request对象的body属性。

cookie-parser  解析客户端cookie中的数据,并将其保存为Request对象的cookie属性

express-session  解析服务端生成的sessionid对应的session数据,并将其保存为request对象的session属性。

query  这个中间件将一个查询字符串从URL转换为Json对象,并将其保存为Request对象的query属性。

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

  1. 封装了一些处理一个完整事件的功能函数。
  2. 非内置的中间件需要通过安装后,require到文件就可以运行。

猜你喜欢

转载自www.cnblogs.com/Mir-bink/p/10259215.html