2013-02-15 4 views
0

API Doc nodejs에 어떻게 설명되어 있는지 EADDRINUSE 핸들을 원하지만 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); 

, 나는 연결 2.7.2로 테스트 throw arguments[1]; // Unhandled 'error' event


을 얻었다.

답변

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

를 참조하십시오

은 그래서 예는 다음과 같아야합니다, 작업하세요
관련 문제