在Node.js中,您可以使用中間件來監控API響應時間。這里以Express框架為例,介紹如何使用中間件來監控API響應時間:
npm install express
app.js
的文件,并在其中引入Express模塊:const express = require('express');
const app = express();
function responseTimeMiddleware(req, res, next) {
const start = Date.now();
res.on('finish', () => {
const duration = Date.now() - start;
console.log(`${req.method} ${req.originalUrl} - ${duration}ms`);
});
next();
}
在這個中間件函數中,我們記錄了請求開始的時間,然后在響應結束時計算持續時間,并將其打印到控制臺。
app.use()
將中間件應用到所有路由:app.use(responseTimeMiddleware);
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.get('/api/data', (req, res) => {
setTimeout(() => {
res.json({ message: 'This is a sample API response.' });
}, 1000);
});
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`);
});
現在,當您訪問http://localhost:3000
或http://localhost:3000/api/data
時,控制臺將顯示API響應時間。
這只是一個簡單的示例,您可以根據需要進行修改和擴展。例如,您可以將響應時間記錄到日志文件中,或者使用第三方庫(如morgan
)來記錄日志。