TsgcWebSocketClient | WebSocket リダイレクト

クライアントが WebSocket サーバーに接続すると、サーバーは HTTP レスポンスコード 30x を返すことがあります。レスポンスコードが 301 の場合、 場所が永続的に移動されたことを意味し、新しい URL が Location HTTP ヘッダーに提供されます。

 

WebSocketクライアントはリダイレクトを自動的に処理します。そのため、サーバー応答に リダイレクトが含まれていることを検出すると、現在の接続を切断し、 新しいLocation URLへの接続を試みます。

 

使用例

  1. クライアントは最初に ws://127.0.0.1:5000 への接続を試みます
  2. サーバーは 301 のレスポンスコードを返し、値 ws://80.50.1.2:3000 の Header Location を含みます。
  3. クライアントはサーバーからのレスポンスを読み取り、リダイレクトであることを検出してLocationを読み取ります
    1. 現在の接続を最初に切断します。
    2. Location ヘッダーの値(ws://80.50.1.2:3000)で URL プロパティを更新します。
    3. 新しいサーバーに接続します。