Class Cookie

java.lang.Object
org.apache.tomcat.util.http.parser.Cookie

public class Cookie extends Object

Cookie header parser based on RFC6265 and RFC2109.

The parsing of cookies using RFC6265 is more relaxed that the specification in the following ways:

  • Values 0x80 to 0xFF are permitted in cookie-octet to support the use of UTF-8 in cookie values as used by HTML 5.
  • For cookies without a value, the '=' is not required after the name as some browsers do not sent it.

The parsing of cookies using RFC2109 is more relaxed that the specification in the following ways:

  • Values for the path attribute that contain a / character do not have to be quoted even though / is not permitted in a token.

Implementation note:
This class has been carefully tuned to ensure that it has equal or better performance than the original Netscape/RFC2109 cookie parser. Before committing and changes, ensure that the TesterCookiePerformance unit test continues to give results within 1% for the old and new parsers.

  • Method Details

    • parseCookie

      public static void parseCookie(byte[] bytes, int offset, int len, ServerCookies serverCookies)
    • unescapeCookieValueRfc2109

      public static String unescapeCookieValueRfc2109(String input)