express同一管理api并记录响应时间
时间: 2023-12-10 22:41:07 浏览: 32
可以使用Express中间件来管理API并记录响应时间。以下是一个示例:
```javascript
const express = require('express');
const app = express();
// 自定义中间件函数来记录请求和响应时间
const logger = (req, res, next) => {
const start = Date.now();
res.on('finish', () => {
const responseTime = Date.now() - start;
console.log(`${req.method} ${req.originalUrl} ${res.statusCode} ${responseTime}ms`);
});
next();
};
// 应用中间件
app.use(logger);
// 定义API路由
app.get('/api/users', (req, res) => {
// 处理请求
});
app.post('/api/users', (req, res) => {
// 处理请求
});
// 启动服务器
app.listen(3000, () => {
console.log('Server started on port 3000');
});
```
在上面的代码中,我们定义了一个自定义中间件函数`logger`,它记录了每个请求的请求方法、URL、响应状态码和响应时间,并在响应完成后打印到控制台。然后我们使用`app.use()`方法将其应用到整个应用程序中。最后,我们定义了一些API路由并启动服务器。
这样,当我们使用这些API时,每个请求和响应都将被记录并输出到控制台,以便我们可以对其进行监视和分析。