3

接続されたクライアントが単純なプレーンテキストやSTOMPメッセージなどのデータストリームのみを受信できるようにするWebSocketサーバーをSpring Web ( Spring Bootによって管理)に実装したいと考えています。公式 Web サイトのドキュメントガイドを読んでいますが、これらの場合、双方向の会話が考慮されます (クライアントがサーバーにメッセージを送信することもできます)。

  1. 私のシナリオでは、WebSocket を正しい方法で表現します (はい、私はこの分野の初心者です)?

  2. はいの場合、言ったように WebSocket を実装するにはどうすればよいですか? @Controllerハンドラを定義する必要が ありますか?

  3. また、特定のクライアントに対してのみ通信を許可することは可能ですか (ルート、IP アドレス、トークンなどを設定することによって)?

乾杯、V.

4

1 に答える 1

3
  1. 「データ ストリームを受信する」はシナリオの技術的な解決策ですが、シナリオ自体ではありません。だからその質問には答えられない。

  2. コントローラーは、着信要求にのみ必要です。あなたの場合、クライアントはトピックにサブスクライブし、サーバーはデータを公開します。そのためには、20.4.2 Enable STOMP over WebSocketで説明されているようにブローカーを登録します。次に、 20.4.5 メッセージの送信で説明されているように、そのブローカー/トピックにデータを送信します。その後、ブローカーはクライアントに配信します。それは STOMP を使用したソリューションです。直接 Websocket を使用すると、自分でできます。

  3. はい。ただし、これは Spring の WebSocket サポートの一部ではありません。必要に応じて、Spring Security を使用できます。

価値があること: Websocket 接続は、処理方法に関係なく、常に双方向です。

于 2014-08-28T12:46:02.983 に答える