標題應該是相當自我解釋。快速記錄響應主體
爲了調試的目的,我想表達打印每個請求服務的響應代碼和正文。打印響應代碼很簡單,但打印響應主體更復雜,因爲它看起來響應主體不容易作爲屬性提供。
下不起作用:
var express = require('express');
var app = express();
// define custom logging format
express.logger.format('detailed', function (token, req, res) {
return req.method + ': ' + req.path + ' -> ' + res.statusCode + ': ' + res.body + '\n';
});
// register logging middleware and use custom logging format
app.use(express.logger('detailed'));
// setup routes
app.get(..... omitted ...);
// start server
app.listen(8080);
當然,我可以輕鬆地打印在誰發出請求的客戶端的響應,但我寧願在服務器端也做的事情。 PS:如果有幫助,我所有的回覆都是json,但是希望有一個解決方案可以與一般回覆一起使用。
謝謝@勞倫特 - 佩林。你的答案肯定有效。我會等待,看看有人有一個更簡單的解決方案,否則我會將其標記爲接受的答案。 –
不錯的解決方案,但如果我需要使用響應壓縮呢? – marmor
只要你在壓縮中間件之前調用'app.use',它應該可以正常工作。 –