Skip to content
This repository has been archived by the owner on Feb 22, 2024. It is now read-only.
/ cookie-dough Public archive

An isomorphic JavaScript cookie library.

License

Notifications You must be signed in to change notification settings

change/cookie-dough

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sorry all, this project is no longer used internally and hasn't been actively maintained in a while. We're closing out the remaining PRs & issues and archiving it.

cookie-dough

An isomorphic JavaScript cookie library.

Wraps https://www.npmjs.com/package/cookie to work on the client and server. Also, required is having parsed cookies in express (for now).

Usage

Geting a cookie

// client-side
// automatically parses the cookies for the page
var cookie = require('cookie-dough')();
cookie.get('name');

// server-side
var express = require('express'),
    CookieDough = require('cookie-dough'),
    cookieParser = require('cookie-parser');

var app = express();
app.use(cookieParser());

app.get('/', function(req, res){
  var cookie = new CookieDough(req); // req is required when creating an instance
  cookie.get('name');
});

Getting all the cookies

// client-side
// automatically parses the cookies for the page
var cookie = require('cookie-dough')();

// returns an object with all of the cookies
// format: { cookieName: "cookie value" }
cookie.all();

// server-side
var express = require('express'),
    CookieDough = require('cookie-dough'),
    cookieParser = require('cookie-parser');

var app = express();
app.use(cookieParser());

app.get('/', function(req, res){
  var cookie = new CookieDough(req);
  cookie.all();
});

Setting a cookie

// client-side
var cookie = require('cookie-dough')();
cookie.set('name', 'value', { /* options */ });

// server-side
var express = require('express'),
    CookieDough = require('cookie-dough'),
    cookieParser = require('cookie-parser');

var app = express();
app.use(cookieParser());

app.get('/', function(req, res){
  var cookie = new CookieDough(req);
  cookie.set('name', 'value', { /* options */ });
});

The options that you can set on a cookie:

path - cookie path

expires - absolute expiration date for the cookie (Date object)

maxAge - relative max age of the cookie from when the client receives it (seconds)

domain - domain for the cookie

secure - true or false

httpOnly - true or false

Removing a cookie

// client-side
var cookie = require('cookie-dough')();
cookie.remove('name', { /* options */ });

// server-side
var express = require('express'),
    CookieDough = require('cookie-dough'),
    cookieParser = require('cookie-parser');

var app = express();
app.use(cookieParser());

app.get('/', function(req, res){
  var cookie = new CookieDough(req);
  cookie.remove('name');
});

The options that can be set to remove a cookie are:

path - cookie path

domain - domain for the cookie

About

An isomorphic JavaScript cookie library.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published