1
Socket.IO를 사용하면 미들웨어 기능이 오류를 전달할 수 있습니다.사용자 정의 Socket.IO 미들웨어 오류 이벤트?
var io = require('socket.io')();
io.use(function(socket, next){
if (socket.request.headers.cookie) return next();
next(new Error('Authentication error'));
});
클라이언트는 기본 '오류'이벤트를 수신하여 이러한 오류를들을 수 있습니다.
clientIO.on('error', function(err) {
console.log(err);
}
Socket.IO 미들웨어를 할 수있는 방법이 대신 '오류'의 사용자 정의 이벤트 이름을 방출 (예를 들면, 'authentication_error')?
서버가 오류 메시지가 ("인증 오류")를 방출 것처럼 나타나는 대신 전체 오류 개체의, 그래서 거기에 오류의 다른 속성에 액세스 할 수 없습니다. 그러나 이것이 관련이없는 문제인지 아닌지는 확실하지 않습니다. – user2901933
'socket.io' (1.4.8)의 현재 버전으로 저에게 잘 작동하는 것 같습니다. [다음은 요점입니다] (https://gist.github.com/robertklep/a8adbdf15a210ac432e4cc1a75d912bf)와 함께 테스트 한 코드. 나는 당신이'err.data'를 사용할 필요가 있다고 믿고,'err.type' 또는 무언가와 같은 임의의 속성이 아니라고 믿습니다. – robertklep