当前位置: 首页> 房产> 建材 > 网站规划说明书范文_浙江网商银行_浏览器老是出现站长工具_深圳营销型网站开发

网站规划说明书范文_浙江网商银行_浏览器老是出现站长工具_深圳营销型网站开发

时间:2025/7/11 23:57:22来源:https://blog.csdn.net/2402_84971234/article/details/146778986 浏览次数:0次
网站规划说明书范文_浙江网商银行_浏览器老是出现站长工具_深圳营销型网站开发

目录

1. 目录结构

2. 代码实现

2.1 安装依赖

2.2 app.js - 主文件

2.3 logger.js - 自定义中间件

3. 程序运行结果

4. 总结


中间件是Node.js中Express框架的核心概念之一,它允许你在请求和响应的生命周期中插入自定义的处理逻辑。中间件可以用来处理请求、响应、错误等操作,极大地提高了代码的可重用性和灵活性。

1. 目录结构

/your-project├── app.js                # 主文件,启动应用├── middleware│   └── logger.js         # 自定义中间件,记录请求信息└── package.json          # 项目依赖管理文件

2. 代码实现

2.1 安装依赖

首先,确保你已经安装了express

npm init -y
npm install express

2.2 app.js - 主文件

app.js是应用的入口文件,我们将在其中引入中间件并配置路由。

// app.js
const express = require('express');
const app = express();// 引入自定义中间件
const logger = require('./middleware/logger');// 使用自定义中间件
app.use(logger);// 路由定义
app.get('/', (req, res) => {res.send('<h1>Welcome to the Home Page</h1>');
});app.get('/about', (req, res) => {res.send('<h1>Welcome to the About Page</h1>');
});// 设置端口监听
const PORT = 3000;
app.listen(PORT, () => {console.log(`Server is running on http://localhost:${PORT}`);
});

说明:

  • 我们在app.js中使用app.use(logger)来注册自定义的中间件logger.js。该中间件会在每个请求到达路由之前被调用。

2.3 logger.js - 自定义中间件

中间件函数可以做任何事情,比如记录日志、处理请求体、验证权限等。在这里,我们编写一个简单的日志记录中间件。

// middleware/logger.js
const logger = (req, res, next) => {console.log(`${req.method} request made to ${req.url}`);next();  // 调用 next() 继续下一个中间件或路由处理
};module.exports = logger;

说明:

  • logger中间件会记录每个请求的HTTP方法和请求的URL。

  • next()是一个必须调用的函数,它告诉Express继续执行下一个中间件或路由处理。

3. 程序运行结果

当你运行node app.js并访问以下地址时,控制台会显示请求的日志信息:

  • 访问http://localhost:3000/时,控制台输出:

    GET request made to /
    
  • 访问http://localhost:3000/about时,控制台输出:

    GET request made to /about
    

4. 总结

中间件是在Express中间请求和响应之间执行的代码块,它非常适合处理日志记录、权限验证、请求数据处理等任务。通过app.use()可以将中间件注册到应用中。在本教程中,我们创建了一个简单的日志中间件,并展示了如何在主应用中使用它。希望这篇文章能帮助你更好地理解Node.js中间件的概念及其使用方法。

 

关键字:网站规划说明书范文_浙江网商银行_浏览器老是出现站长工具_深圳营销型网站开发

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: