クラス OriginHandshakeInterceptor

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

public class OriginHandshakeInterceptor extends ObjectSE implements HandshakeInterceptor
許可された発信元のコレクションに対してリクエスト Origin ヘッダー値をチェックするインターセプター。
導入:
4.1.2
作成者:
Sebastien Deleuze
  • フィールドの詳細

    • logger

      protected final Log logger
  • コンストラクターの詳細

    • OriginHandshakeInterceptor

      public OriginHandshakeInterceptor()
      同じオリジンリクエストのみが許可されたデフォルトコンストラクター。
    • OriginHandshakeInterceptor

      public OriginHandshakeInterceptor(CollectionSE<StringSE> allowedOrigins)
      指定された許可された起点値を使用するコンストラクター。
      関連事項:
  • メソッドの詳細

    • setAllowedOrigins

      public void setAllowedOrigins(CollectionSE<StringSE> allowedOrigins)
      ブラウザーからのクロスオリジンリクエストを許可するオリジンを設定します。フォーマットの詳細と考慮事項については CorsConfiguration.setAllowedOrigins(List) を参照してください。また、CORS 仕様では "*" と allowCredentials=true の使用が許可されていないことに注意してください。より柔軟な原点パターンの場合は、代わりに setAllowedOriginPatterns(java.util.Collection<java.lang.String>) を使用してください。

      デフォルトでは、オリジンは許可されていません。allowedOriginPatterns も設定されている場合、このプロパティよりも優先されます。

      SockJS が有効で、オリジンが制限されている場合、リクエストのオリジンをチェックできないトランスポート型(Iframe ベースのトランスポート)は無効になっていることに注意してください。結果として、オリジンが制限されている場合、IE6 から 9 はサポートされません。

      関連事項:
    • getAllowedOrigins

      public CollectionSE<StringSE> getAllowedOrigins()
      configured の許可されたオリジンを返します。
      導入:
      4.1.5
    • setAllowedOriginPatterns

      public void setAllowedOriginPatterns(CollectionSE<StringSE> allowedOriginPatterns)
      ブラウザーからのクロスオリジンリクエストが許可されるオリジンを指定するためのより柔軟なパターンをサポートする setAllowedOrigins(Collection) の代替。フォーマットの詳細やその他の考慮事項については、CorsConfiguration.setAllowedOriginPatterns(List) を参照してください。

      デフォルトでは、これは設定されていません。

      導入:
      5.3.2
    • getAllowedOriginPatterns

      public CollectionSE<StringSE> getAllowedOriginPatterns()
      configured の許可された原点パターンを返します。
      導入:
      5.3.2
    • 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 exception)
      インターフェースからコピーされた説明: HandshakeInterceptor
      ハンドシェイクが完了した後に呼び出されます。レスポンスステータスとヘッダーは、ハンドシェイクの結果、つまり成功したかどうかを示します。
      次で指定:
      インターフェース HandshakeInterceptorafterHandshake 
      パラメーター:
      request - 現在のリクエスト
      response - 現在のレスポンス
      wsHandler - ターゲット WebSocket ハンドラー
      exception - ハンドシェイク中に発生した例外、ない場合は null