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」)のカスタムイベント名を発する持ってする方法はありますか?
サーバはそうそこに、全体の代わりにErrorオブジェクトのエラーメッセージ(「認証エラー」)を放出するかのようにそれが表示されますエラーの他のプロパティにアクセスする方法はありません。しかし、これが無関係な問題であるかどうかはわかりません。 – user2901933
現在のバージョンの 'socket.io'(1.4.8)でうまく動作しているようです。 [ここで要点](https://gist.github.com/robertklep/a8adbdf15a210ac432e4cc1a75d912bf)には、私がテストしたコードがあります。私は 'err.data'を使う必要があると信じていますが、' err.type'や何かのようなランダムなプロパティではないと思います。 – robertklep