我有這個簡單的代碼。這必須在每個請求中向我顯示我的錯誤對象({error:'error'})。但它只顯示「[Object object]」。而且 - 調試器從不停止在錯誤處理函數中。 發生了什麼事?NodeJS中的域有些問題
var domain = require('domain');
var express = require('express');
var server = express();
server.get('/', function(req, res)
{
var d = domain.create();
d.on('error', function(e)
{
debugger;
console.log(JSON.stringify(e));
});
d.run(function()
{
throw {error:'error'};
res.send('ok');
});
});
server.listen(8080);
爲什麼拋出一個對象而不是實際的'Error'實例? – mscdex 2014-11-03 21:44:20
因爲我需要自己的一套屬性。 – 2014-11-03 21:59:39
你也可以在'Error'對象上設置你自己的屬性:'var err = new Error('My error!'); err.foo ='bar';扔錯誤;' – mscdex 2014-11-04 01:16:35