如何使用node.js Express应用程序设置漂亮错误模块?

时间:2014-04-04 18:14:07

标签: node.js express

我想在我的Express应用中使用pretty-error模块,但无法正确设置。

我尝试使用快捷方式......

require('pretty-error').start(function(){
    http.createServer(app).listen(app.get('port'), function(){
        console.log('Express server listening on port ' + app.get('port'));
    });
});

......但它不起作用。

1 个答案:

答案 0 :(得分:2)

我之前没有使用过express,所以我不确定这是否是最好的解决方案,但这就是我将express-error与express集成的方式:

// this is app.js

var express = require('express');
var PrettyError = require('pretty-error');

var app = express();

app.get('/', function(req, res) {

   // this will throw an error:
   var a = b;

});

var server = app.listen(3000, function(){

   console.log('Server started \n');

});


// we can now instantiaite Prettyerror
pe = new PrettyError();

// and use it for our app's error handler
app.use(function(err, req, res, next){

   console.log(pe.render(err));

});

// we can optionally configure prettyError to simplify the stack trace:

pe.skipNodeFiles(); // this will skip events.js and http.js and similar core node files


这是错误的屏幕截图:

enter image description here


如果您不想查看有关快递核心文件的内容,也可以添加此内容:

pe.skipPackage('express');

这就是它的样子:

enter image description here