Skip to content

charmander/strict-cookie-parser

Repository files navigation

Build status

Parses cookie headers according to RFC 6265, producing a Map.

For Connect (Express) middleware, see strict-cookie-middleware.

import { parseCookieHeader } from 'strict-cookie-parser';

parseCookieHeader('hello=world; foo=bar')
// Map { 'hello' => 'world', 'foo' => 'bar' }

parseCookieHeader('not a cookie')
// null
import {
    parseCookiePair,
    isCookieName,
    parseCookieValue,
} from 'strict-cookie-parser';

parseCookiePair('single=pair')
// { name: 'single', value: 'pair' }

isCookieName('foo')
// true

isCookieName('m=m')
// invalid - cookie names cannot contain =
// false

parseCookieValue('"foo"')
// 'foo'

parseCookieValue(' foo')
// invalid - unquoted cookie values cannot begin with a space
// null