クラス DefaultCookieSerializer
java.lang.ObjectSE
org.springframework.session.web.http.DefaultCookieSerializer
- 実装済みのインターフェース一覧:
CookieSerializer
CookieSerializer のデフォルト実装。- 導入:
- 1.1
ネストされたクラスの概要
インターフェース org.springframework.session.web.http.CookieSerializer から継承されたネストクラス / インターフェース
CookieSerializer.CookieValueコンストラクター概要
コンストラクター方法の概要
修飾子と型メソッド説明Cookie をInteger.MAX_VALUESE で書き込む必要があるかどうかを確認するためにチェックされるリクエスト属性の名前を取得します。readCookieValues(jakarta.servlet.http.HttpServletRequest request) HttpServletRequestから一致するすべての Cookie を読み取ります。voidsetCookieMaxAge(int cookieMaxAge) Cookie の maxAge プロパティを設定します。voidsetCookieName(StringSE cookieName) voidsetCookiePath(StringSE cookiePath) Cookie のパスを設定します。voidsetDomainName(StringSE domainName) 明示的なドメイン名を設定します。voidsetDomainNamePattern(StringSE domainNamePattern) ServletRequest.getServerName()からドメイン名を抽出するために使用される大文字と小文字を区別しないパターンを設定します。voidsetJvmRoute(StringSE jvmRoute) セッションアフィニティのためにルーティングする JVM を識別するために使用されます。voidsetPartitioned(boolean partitioned) 生成された Cookie に Partitioned 属性が含まれるかどうかを定義できます。voidsetRememberMeRequestAttribute(StringSE rememberMeRequestAttribute) Remember-me ログインを示すリクエスト属性名を設定します。voidsetSameSite(StringSE sameSite) SameSitecookie ディレクティブの値を設定します。voidsetUseBase64Encoding(boolean useBase64Encoding) Cookie 値の Base64 エンコーディングを使用する必要があるかどうかを設定します。voidsetUseHttpOnlyCookie(boolean useHttpOnlyCookie) HTTP のみとしてマークされた Cookie を使用するかどうかを設定します。voidsetUseSecureCookie(boolean useSecureCookie) 安全とマークされた Cookie を使用するかどうかを設定します。voidwriteCookieValue(CookieSerializer.CookieValue cookieValue) 指定されたCookieSerializer.CookieValueを指定されたHttpServletResponseに書き込みます。
コンストラクターの詳細
DefaultCookieSerializer
public DefaultCookieSerializer()
メソッドの詳細
readCookieValues
インターフェースからコピーされた説明:CookieSerializerHttpServletRequestから一致するすべての Cookie を読み取ります。名前が一致する単一のリクエストに複数のCookieが存在する可能性があるため、結果はリストになります。例: 1 つの Cookie のパスが / で、別の Cookie のパスが /context, である可能性がありますが、パスはリクエストで送信されません。- 次で指定:
- インターフェース
CookieSerializerのreadCookieValues - パラメーター:
request- Cookie を読み取るHttpServletRequest。null にすることはできません。- 戻り値:
- 一致するすべての Cookie の値
writeCookieValue
インターフェースからコピーされた説明:CookieSerializer指定されたCookieSerializer.CookieValueを指定されたHttpServletResponseに書き込みます。- 次で指定:
- インターフェース
CookieSerializerのwriteCookieValue - パラメーター:
cookieValue-CookieSerializer.CookieValue.getResponse()に書き込むCookieSerializer.CookieValue。null にすることはできません。
setUseSecureCookie
public void setUseSecureCookie(boolean useSecureCookie) 安全とマークされた Cookie を使用するかどうかを設定します。デフォルトでは、ServletRequest.isSecure()の値を使用します。- パラメーター:
useSecureCookie- Cookie を安全としてマークする必要があるかどうかを決定します。
setUseHttpOnlyCookie
public void setUseHttpOnlyCookie(boolean useHttpOnlyCookie) HTTP のみとしてマークされた Cookie を使用するかどうかを設定します。デフォルトは true です。- パラメーター:
useHttpOnlyCookie- Cookie を HTTP のみとしてマークする必要があるかどうかを決定します。
setCookiePath
Cookie のパスを設定します。デフォルトでは、HttpServletRequestからのコンテキストパスを使用します。- パラメーター:
cookiePath- クッキーのパス。null の場合、コンテキストパスのデフォルトが使用されます。
setCookieName
setCookieMaxAge
public void setCookieMaxAge(int cookieMaxAge) Cookie の maxAge プロパティを設定します。デフォルトでは、ブラウザーが閉じられると Cookie が削除されます。- パラメーター:
cookieMaxAge- Cookie の maxAge プロパティ (秒で定義)
setDomainName
明示的なドメイン名を設定します。これにより、リクエストが www.example.com から送信されたときに、"example.com" のドメインを使用できるようになります。これにより、サブドメイン間で Cookie を共有できます。デフォルトでは、現在のドメインを使用します。- パラメーター:
domainName- 使用するドメインの名前。(つまり、"example.com" )- 例外:
IllegalStateExceptionSE- domainNamePattern も設定されている場合
setDomainNamePattern
ServletRequest.getServerName()からドメイン名を抽出するために使用される大文字と小文字を区別しないパターンを設定します。パターンは、一致する値を定義する単一のグループ化を提供する必要があります。ユーザーは、HTTP レスポンスの分割のようなものを防ぐために、新しい行のような悪意のある文字を出力しないように注意する必要があります。パターンが一致しない場合、ドメインは設定されません。これは、ローカルホストが使用される可能性がある開発中にドメインが設定されないようにするために役立ちます。
値の例としては、"^.+?\\.(\\w+\\.[a-z]+)$" などがあります。指定された入力に対して、次の明示的なドメインが提供されます (null はドメイン名が設定されていないことを意味します)。
- example.com - null
- child.sub.example.com - example.com
- localhost - null
- 127.0.1.1 - null
- パラメーター:
domainNamePattern- ドメイン名を抽出するための大文字と小文字を区別しないパターン- 例外:
IllegalStateExceptionSE- domainName も設定されている場合
setJvmRoute
セッションアフィニティのためにルーティングする JVM を識別するために使用されます。一部の実装(Redis など)では、これはパフォーマンス上の利点を提供しません。ただし、これは特定のユーザーのログを追跡できます。これにより、Cookie の値が次のようにフォーマットされます。
sessionId + "." jvmRoute使用するには、各 JVM インスタンスにカスタムルートを設定し、ルートに基づいてすべてのリクエストを JVM に転送するようにフロントエンドプロキシを設定します。
- パラメーター:
jvmRoute- 使用する JVM ルート (つまり、"node01jvmA"、"n01ja" など)
setUseBase64Encoding
public void setUseBase64Encoding(boolean useBase64Encoding) Cookie 値の Base64 エンコーディングを使用する必要があるかどうかを設定します。これは、Cookie 値に Base64 エンコーディングを使用することを推奨する RFC 6265 をサポートするために役立ちます。- パラメーター:
useBase64Encoding- Base64 エンコーディングを使用するかどうかを示すフラグ
setRememberMeRequestAttribute
Remember-me ログインを示すリクエスト属性名を設定します。指定した場合、Cookie は Integer.MAX_VALUE として書き込まれます。- パラメーター:
rememberMeRequestAttribute- Remember-me リクエストの属性名- 導入:
- 1.3.0
setSameSite
SameSitecookie ディレクティブの値を設定します。デフォルト値はLaxです。- パラメーター:
sameSite- SameSite ディレクティブ値- 導入:
- 2.1.0
getRememberMeRequestAttribute
Cookie をInteger.MAX_VALUESE で書き込む必要があるかどうかを確認するためにチェックされるリクエスト属性の名前を取得します。- 戻り値:
- 「私を覚えてください」リクエスト属性
- 導入:
- 3.2
setPartitioned
public void setPartitioned(boolean partitioned) 生成された Cookie に Partitioned 属性が含まれるかどうかを定義できます。- パラメーター:
partitioned- 生成されたクッキーが分割されているかどうか- 導入:
- 3.4