2017-09-09 1 views
0

ユーザーがルートを使用したが、このユーザーには使用していないというシグナルをすべてのユーザーに送信します。 SocketIOはトリックをうまくやっている "ブロードキャスト"機能を持っていますが、ルート機能内でこの変数にどのようにアクセスできるかはわかりません。たとえば :またはそれが可能だとしても、それを得るためのミドルウェアがあるかどうエクスプレスルート内でリクエスタのソケットを取得する

app.post('/api', (req, res) => { 

    // Doing stuff... 

    socket.broadcast.emit('myAwesomeEvent'); 
    // Broadcast will send the signal to every users but the socket's owner 

}); 

だから、私は、ルート内でこの「放送」のソケットを取得する方法がわかりません。そうでない場合は、どうすれば目標を達成できますか? ありがとうございました。

+0

どのような種類のサーバーサイドセッションオブジェクトを使用していますか? – jfriend00

+0

私はそうは思わない – Xobtah

答えて

0

私が同じことをやっているのは、最初にクライアントのソケットを認証し、ソケットに一時的なコードを与えることです。

クライアントがルートに当たるたびに、すべてのリクエストで上記のようにsocket-idと一時コードが提供されると考えられます。

このsocket-idを使用して、私は他のすべてにブロードキャストを送信します。

必要に応じて同じロジックを変更できます。

関連する問題