Cookie Processor コンポーネント
目次
はじめに
CookieProcessor 要素は、受信したクッキーヘッダを HttpServletRequest.getCookies()
を介してアクセス可能な jakarta.servlet.http.Cookie
オブジェクトに解析し、HttpServletResponse.addCookie()
を介してレスポンスに追加された jakarta.servlet.http.Cookie
オブジェクトをクライアントに返されるHTTPヘッダに変換するコンポーネントを表します。
CookieProcessor 要素は、Context コンポーネントの内部にネストされることがあります。もし含まれていない場合、デフォルトの実装が自動的に作成されます。
属性
共通属性
CookieProcessor のすべての実装は、以下の属性をサポートします
属性 | 説明 |
---|---|
className |
使用する実装のJavaクラス名。このクラスは |
標準実装
CookieProcessor の標準実装は org.apache.tomcat.util.http.Rfc6265CookieProcessor
です。
このクッキープロセッサはRFC6265に基づいていますが、より良い相互運用性をサポートするために以下の変更が加えられています
- HTML 5で使用されるクッキー値におけるUTF-8の使用をサポートするため、cookie-octet では 0x80 から 0xFF の値が許可されます。
- 値のないクッキーの場合、一部のブラウザが送信しないため、名前の後に'='は必須ではありません。
RFC 6265 クッキープロセッサは、レガシーなクッキーパーサーよりも一般的に寛容です。特に、
- クッキー値では'
=
'と'/
'文字が常に許可されます。 - 名前のみのクッキーは常に許可されます。
- クッキーヘッダは常に保持されます。
RFC 6265 Cookie Processor は、以下の追加属性をサポートします。
属性 | 説明 |
---|---|
cookiesWithoutEquals |
ユーザーエージェントから受信したクッキーの、名前と値のペアに等号が含まれていない場合の解釈方法を決定します。デフォルト値は |
partitioned |
クッキーにPartitionedフラグを設定するかどうか?デフォルトは 注記:CHIPSの一部としてパーティション化されたクッキーを示すために使用される属性名はRFCによって定義されておらず、同等の機能がRFCに含まれた場合、後方互換性のない方法で変更される可能性があります。 |
sameSiteCookies |
Same-Site クッキー属性の設定を有効にします。 値が 値が 値が 値が |
ネストされたコンポーネント
CookieProcessor の内部に要素をネストすることはできません。
特殊な機能
CookieProcessor 要素には特別な機能は関連付けられていません。