trait CookieHeaderEncoding extends AnyRef
Logic for encoding and decoding Cookie
and Set-Cookie
headers.
- Source
- Cookie.scala
- Alphabetic
- By Inheritance
- CookieHeaderEncoding
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Concrete Value Members
- val SetCookieHeaderSeparator: String
Play doesn't support multiple values per header, so has to compress cookies into one header.
Play doesn't support multiple values per header, so has to compress cookies into one header. The problem is, Set-Cookie doesn't support being compressed into one header, the reason being that the separator character for header values, comma, is used in the dates in the Expires attribute of a cookie value. So we synthesise our own separator, that we use here, and before we send the cookie back to the client.
- val SetCookieHeaderSeparatorRegex: Regex
- def decodeCookieHeader(cookieHeader: String): Seq[Cookie]
Decodes a Cookie header value as a proper cookie set.
Decodes a Cookie header value as a proper cookie set.
- cookieHeader
the Cookie header value
- returns
decoded cookies
- def decodeSetCookieHeader(cookieHeader: String): Seq[Cookie]
Decodes a Set-Cookie header value as a proper cookie set.
Decodes a Set-Cookie header value as a proper cookie set.
- cookieHeader
the Set-Cookie header value
- returns
decoded cookies
- def encodeCookieHeader(cookies: Seq[Cookie]): String
Encodes cookies as a Set-Cookie HTTP header.
Encodes cookies as a Set-Cookie HTTP header.
- cookies
the Cookies to encode
- returns
a valid Set-Cookie header value
- def encodeSetCookieHeader(cookies: Seq[Cookie]): String
Encodes cookies as a Set-Cookie HTTP header.
Encodes cookies as a Set-Cookie HTTP header.
- cookies
the Cookies to encode
- returns
a valid Set-Cookie header value
- def fromCookieHeader(header: Option[String]): Cookies
- def fromSetCookieHeader(header: Option[String]): Cookies
- def mergeCookieHeader(cookieHeader: String, cookies: Seq[Cookie]): String
Merges an existing Cookie header with new cookie values
Merges an existing Cookie header with new cookie values
- cookieHeader
the existing Cookie header value
- cookies
the new cookies to encode
- returns
a valid Cookie header value
- def mergeSetCookieHeader(cookieHeader: String, cookies: Seq[Cookie]): String
Merges an existing Set-Cookie header with new cookie values
Merges an existing Set-Cookie header with new cookie values
- cookieHeader
the existing Set-Cookie header value
- cookies
the new cookies to encode
- returns
a valid Set-Cookie header value