JSPM

  • Created
  • Published
  • Downloads 1897995
  • Score
    100M100P100Q196064F
  • License MIT

Universal cookies for JavaScript

Package Exports

  • universal-cookie
  • universal-cookie/cjs
  • universal-cookie/es6
  • universal-cookie/lib/utils

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (universal-cookie) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

universal-cookie

Universal cookies for JavaScript

Build Status
Sauce Test Status

Integrations

Getting started

npm install universal-cookie

or in the browser (global variable UniversalCookie):

<script crossorigin src="https://unpkg.com/universal-cookie@3/umd/universalCookie.min.js"></script>

API - Cookies class

constructor([cookieHeader])

Create a cookies context

  • cookieHeader (string|object): specify the cookie header or object

get(name, [options])

Get a cookie value

  • name (string): cookie name
  • options (object):
    • doNotParse (boolean): do not convert the cookie into an object no matter what

getAll([options])

Get all cookies

  • options (object):
    • doNotParse (boolean): do not convert the cookie into an object no matter what

set(name, value, [options])

Set a cookie value

  • name (string): cookie name
  • value (string|object): save the value and stringify the object if needed
  • options (object): Support all the cookie options from RFC 6265
    • path (string): cookie path, use / as the path if you want your cookie to be accessible on all pages
    • expires (Date): absolute expiration date for the cookie
    • maxAge (number): relative max age of the cookie from when the client receives it in second
    • domain (string): domain for the cookie (sub.domain.com or .allsubdomains.com)
    • secure (boolean): Is only accessible through HTTPS?
    • httpOnly (boolean): Is only the server can access the cookie?
    • sameSite (boolean|none|lax|strict): Strict or Lax enforcement

remove(name, [options])

Remove a cookie

  • name (string): cookie name
  • options (object): Support all the cookie options from RFC 6265
    • path (string): cookie path, use / as the path if you want your cookie to be accessible on all pages
    • expires (Date): absolute expiration date for the cookie
    • maxAge (number): relative max age of the cookie from when the client receives it in second
    • domain (string): domain for the cookie (sub.domain.com or .allsubdomains.com)
    • secure (boolean): Is only accessible through HTTPS?
    • httpOnly (boolean): Is only the server can access the cookie?
    • sameSite (boolean|none|lax|strict): Strict or Lax enforcement

addChangeListener(callback)

Add a listener to when a cookie is set or removed.

  • callback (function): Call that will be called with the first argument containing name, value and options of the changed cookie.

removeChangeListener(callback)

Remove a listener from the change callback.

Browser Example

import Cookies from 'universal-cookie';

const cookies = new Cookies();

cookies.set('myCat', 'Pacman', { path: '/' });
console.log(cookies.get('myCat')); // Pacman

Server Example

import Cookies from 'universal-cookie';

const cookies = new Cookies(req.headers.cookie);

console.log(cookies.get('myCat')); // Pacman or undefined if not set yet