【NodeJS】关于Node.js Web框架Koa的中间件编写以及如何理解洋葱模型
const Koa = require('koa');
const Router = require('koa-router');
const app = new Koa();
const router = new Router();
// 中间件:打印请求URL
app.use(async (ctx, next) => {
console.log(`Processing request for ${ctx.request.method} ${ctx.request.url}`);
await next(); // 调用下一个中间件
});
// 中间件:处理路由
router.get('/', async (ctx) => {
ctx.body = 'Hello World!';
});
app.use(router.routes()); // 使用路由中间件
app.use(router.allowedMethods()); // 允许查询方法
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
这段代码创建了一个简单的Koa服务器,使用了洋葱模型的中间件机制。它首先定义了一个Koa实例和一个路由实例。然后,它添加了一个中间件来打印请求信息,并在该中间件之后调用next()
来继续执行后续中间件。接着,它定义了一个处理根路由的中间件,并将其添加到路由中。最后,它启动了服务器,监听3000端口。这个例子展示了如何使用Koa框架创建一个简单的Web服务器,并且如何通过中间件来处理请求。
评论已关闭