node.js中间件
在Node.js中,中间件是一种组织和重用代码的方式,通常用于web开发框架,如Express.js。中间件函数可以访问请求对象(request object)、响应对象(response object)和next函数(一个用于执行下一个中间件的函数)。
以下是一个简单的Node.js中间件示例,使用Express.js框架:
const express = require('express');
const app = express();
// 简单的日志中间件
const logMiddleware = (req, res, next) => {
console.log('有请求进入中间件');
next();
};
// 简单的校验中间件
const checkAuthMiddleware = (req, res, next) => {
if (req.headers.authorization === 'secret-key') {
next();
} else {
res.status(401).send('未授权');
}
};
app.use(logMiddleware);
app.use(checkAuthMiddleware);
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(3000, () => {
console.log('服务器运行在 http://localhost:3000/');
});
在这个例子中,我们定义了两个中间件:logMiddleware
和checkAuthMiddleware
。logMiddleware
简单记录请求并通过next()
调用下一个中间件。checkAuthMiddleware
检查请求中的认证信息,如果认证通过,则调用next()
继续处理请求,否则返回未授权的响应。
在实际应用中,中间件可以用于身份验证、会话处理、日志记录、错误处理、数据预处理等多种场景。通过中间件,开发者可以构建灵活且可重用的web应用程序。
评论已关闭