express 中间件

Posted alisawj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了express 中间件相关的知识,希望对你有一定的参考价值。

分析一下从浏览器地址栏输入url到客户端显示数据之间的这个过程发生了什么:
 
浏览器象服务器发送一个请求后,服务器直接通过request定位属性的方得到通过reques携带过去的数据(有用户输入的数据和浏览器本身的数据信息)。这中间就一定有一个函数将这些数据分类做了处理,已经处理好了,最后让request对象调用使用,这个处理数据处理函数就是我们要说的中间件。由此可见,中间件可以总结以下几点:
 
1、封装了一些处理一个完整事件的功能函数。
2、非内置的中间件需要通过安装后,require到文件就可以运行。
3、封装了一些获取复杂但肯定是通用的功能。
 
一、express中间件函数的特点及作用
 
1、特点:中间件函数能够访问请求对象(req)、响应对象(res)、下一个中间件函数(next);中间件默认按载入顺序依次执行,直到请求响应循环结束;
2、作用:①对请求对象进行处理;②对响应对象进行处理;③执行任意自定义功能;④调用下一个中间件;⑤结束请求响应循环;
3、中间件种类:①应用层中间件;②路由层中间件;③错误处理中间件;④内置中间件;⑤第三方中间件
代码如下:
var express=require(‘express‘)
var app=express();
app.get(‘/‘,function(req,res,next){ 
    console.log(‘Response with middleware is working ok.‘);
    next();
},function(req,res){
    res.send(‘Hello world!‘)
})
app.listen(3000);

 

二、中间件结构
1、app.use([path],function)
path:是路由的url,默认参数‘/‘,意义是路由到这个路径时使用这个中间件
function:中间件函数
这个中间件函数可以理解为就是function(request,response,next)
这里安装是指涉及到第三方中间件的使用时,需要先安装好,然后在使用。

以上是关于express 中间件的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 express 中间件处理所有路由?

关于Express的中间件

express-middleware

使用express.static中间件

二express中间件

如何使用 jest 在 javascript 中测试 try catch 代码并在 express 中包含带有中间件的 next() 调用?