本文概要
- 什么是中间件功能
- Express.js中间件
- Express.js中间件的应用
中间件通常用于执行状体解析任务的URL编码或JSON请求,cookie解析基本cookie处理,或在飞行中甚至构建JavaScript模块。
什么是中间件功能中间件功能是函数,获得在请求 – 响应周期的请求和响应的对象(REQ,RES)。
中间件功能可以执行以下任务:
- 它可以执行任意代码。
- 它可以修改请求和响应的对象。
- 它可以结束请求响应周期。
- 它可以调用堆栈中的下一个中间件功能。
- 应用级中间件
- 路由器级中间件
- 错误处理中间件
- 内置的中间件
- 第三方中间件
让我们最基本的Express.js应用:
文件:simple_express.js
var express = require('express');
var app = express();
app.get('/',function(req,res) {
res.send('Welcome to srcmini!');
});
app.get('/help',function(req,res) {
res.send('How can I help You?');
});
var server = app.listen(8000,function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s",host,port)
})
文章图片
你将看到服务器正在监听。
现在,你可以看到http://127.0.0.1:8000通过服务器在本地主机上所产生的结果
输出:
文章图片
让我们来看看下一个页面:http://127.0.0.1:8000/help
输出:
文章图片
文章图片
注意:你将看到该命令提示符没有改变。装置,它没有显示尽管GET请求在http://127.0.0.1:8000/help页处理的GET请求中的任何记录。
Express.js中间件的应用如果你想记录每次你得到一个请求,那么你可以使用一个中间件。
见下面的例子:
【Express.js中间件】文件:simple_middleware.js
var express = require('express');
var app = express();
app.use(function(req,res,next) {
console.log('%s %s',req.method,req.url);
next();
});
app.get('/',function(req,res,next) {
res.send('Welcome to srcmini!');
});
app.get('/help',function(req,res,next) {
res.send('How can I help you?');
});
var server = app.listen(8000,function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s",host,port)
})
文章图片
你将看到服务器正在监听。
现在,你可以看到http://127.0.0.1:8000通过服务器在本地主机上所产生的结果
输出:
文章图片
你可以看到,输出是相同的,但命令提示符显示GET结果。
文章图片
转到http://127.0.0.1:8000/help
文章图片
文章图片
多次重新加载页面,在命令提示符下将被更新。
文章图片
注:在上面的例子接下来被使用next()的中间件。
中间件实例详解
- 另外,在上述实施例的中间件一个新的功能是用来经由app.use每个请求来调用。
- 中间件是一个函数,就像途径处理,并援引了类似的方式。
- 你可以添加的上方或下方使用相同的API更中间件。
推荐阅读
- Express.js脚手架
- Express.js文件上传
- Express.js Cookie
- Express.js路由
- Express.js POST请求
- Express.js GET请求
- Express.js响应Response
- Express.js请求
- 安装Express.js