クラス HttpSessionHandshakeInterceptor

java.lang.ObjectSE
org.springframework.web.socket.server.support.HttpSessionHandshakeInterceptor
実装されたすべてのインターフェース:
HandshakeInterceptor

public class HttpSessionHandshakeInterceptor extends ObjectSE implements HandshakeInterceptor
WebSocketSession.getAttributes() を介して利用できるように、HTTP セッションから「ハンドシェイク属性」マップに情報をコピーするインターセプター。

サブセットまたはすべての HTTP セッション属性および / または HTTP セッション ID をキー HTTP_SESSION_ID_ATTR_NAME にコピーします。

導入:
4.0
作成者:
Rossen Stoyanchev
  • フィールドの詳細

  • コンストラクターの詳細

  • メソッドの詳細

    • getAttributeNames

      public CollectionSE<StringSE> getAttributeNames()
      コピーする構成済みの属性名を返します(読み取り専用)。
    • setCopyAllAttributes

      public void setCopyAllAttributes(boolean copyAllAttributes)
      HTTP セッションからすべての属性をコピーするかどうか。"true" に設定すると、明示的に構成された属性名は無視されます。

      デフォルトでは、これは、使用されたコンストラクターに応じて "true" または "false" に設定されます(デフォルトまたはそれぞれ属性名を使用)。

      パラメーター:
      copyAllAttributes - すべての属性をコピーするかどうか
    • isCopyAllAttributes

      public boolean isCopyAllAttributes()
      すべての HTTP セッション属性をコピーするかどうか。
    • setCopyHttpSessionId

      public void setCopyHttpSessionId(boolean copyHttpSessionId)
      HTTP セッション ID をキー HTTP_SESSION_ID_ATTR_NAME のハンドシェイク属性にコピーする必要があるかどうか。

      デフォルトでは "true" です。

      パラメーター:
      copyHttpSessionId - HTTP セッション ID をコピーするかどうか。
    • isCopyHttpSessionId

      public boolean isCopyHttpSessionId()
      HTTP セッション ID をハンドシェイク属性にコピーするかどうか。
    • setCreateSession

      public void setCreateSession(boolean createSession)
      アクセス中に HTTP セッションの作成を許可するかどうか。

      デフォルトでは false に設定されています。

      関連事項:
    • isCreateSession

      public boolean isCreateSession()
      HTTP セッションの作成を許可するかどうか。
    • beforeHandshake

      public boolean beforeHandshake(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler wsHandler, MapSE<StringSE,ObjectSE> attributes) throws ExceptionSE
      インターフェースからコピーされた説明: HandshakeInterceptor
      ハンドシェイクが処理される前に呼び出されます。
      次で指定:
      インターフェース HandshakeInterceptorbeforeHandshake 
      パラメーター:
      request - 現在のリクエスト
      response - 現在のレスポンス
      wsHandler - ターゲット WebSocket ハンドラー
      attributes - WebSocket セッションに関連付ける HTTP ハンドシェイクの属性。提供された属性がコピーされ、元のマップは使用されません。
      戻り値:
      ハンドシェイク(true)を続行するか、中止するか (false)
      例外:
      ExceptionSE
    • afterHandshake

      public void afterHandshake(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler wsHandler, @Nullable ExceptionSE ex)
      インターフェースからコピーされた説明: HandshakeInterceptor
      ハンドシェイクが完了した後に呼び出されます。レスポンスステータスとヘッダーは、ハンドシェイクの結果、つまり成功したかどうかを示します。
      次で指定:
      インターフェース HandshakeInterceptorafterHandshake 
      パラメーター:
      request - 現在のリクエスト
      response - 現在のレスポンス
      wsHandler - ターゲット WebSocket ハンドラー
      ex - ハンドシェイク中に発生した例外、ない場合は null