RxJSでWebSocketストリームをモデル化する方法は何ですか?RxJSでWebSocketストリームをモデリングする
明らかなのは、ストリームのストリームがメッセージのストリームを放出することです。
tソケットのストリームを作成した場合、メッセージのストリームを作成しても、これらのメッセージを送信した人をどのように保存できますか?
ソケットストリームは、私の最初のステップだった:
const socket$ = Observable.create(({complete, next}) => {
const server = new WebSocketServer({server: someHttpServer})
server.on('connection', next)
return() => {
server.close()
complete()
}
})
しかし、私は、私がメッセージを持ってソケットを必要とするため、メッセージの流れは、少し難しいです。すべてのソケットからすべてのソケットメッセージをストリームに観察
const message$ = socket$.flatMap(socket => Observable.create(({complete, next}) => {
socket.on('message', next)
socket.on('close', complete)
return() => socket.close()
})).share()
:
これは、モデリングの私の拳素朴な試みでした。しかし、私がそれを購読すれば、私はもはやソケットを持っていないので、これは単方向性になります。
私は
socket$ -> message$ -> server-processing -> socket$
をしたいが、複数のユースケースは、応答、ブロードキャスト、マルチキャストおよびユニキャストのためにそこにあります。
ありがとうございますが、これはクライアント向けのようです。私は私の質問に詳細を追加しました:) –
このライブラリは廃止されました。それはRxJSに直接折り畳まれています:https://github.com/ReactiveX/rxjs/tree/master/src/internal/observable/dom – Sawtaytoes