2013-02-15 85 views
0

我想處理EADDRINUSE如何在API Doc nodejs中描述它,但connect/express沒有調用錯誤事件處理程序。Node.js:如何將事件處理程序添加到Connect/Express Server?

這裏是一個例子:

var connect = require('connect'); 
var app = connect(); 

app.use(function(req, res){ 
    res.end('hello world\n'); 
}); 

app.on('error' , function(e) { 
    console.log('error event handler called'); 
}); 

app.listen(3000); 

如果我啓動服務器的兩倍,我得到了
throw arguments[1]; // Unhandled 'error' event

我與連接2.7.2測試它。

回答

1

自版本2.x起,connect()不再是net.Server的構造函數。 'net.Server'將由函數listen(...)返回。

所以爲了獲取例如工作,它應該是這樣的:

var connect = require('connect'); 
var app = connect(); 

app.use(function(req, res){ 
    res.end('hello world\n'); 
}); 

app.listen(3000).on('error' , function(e) { 
    console.log('error event handler called'); 
}); 

也看到connect issue #749

相關問題