What is biskviit?
Biskviit is a lightweight cookie parser and serializer for Node.js. It allows you to easily handle HTTP cookies, including parsing cookie headers and creating cookie strings.
What are biskviit's main functionalities?
Parse Cookies
This feature allows you to parse a cookie header string into an object. The code sample demonstrates how to use Biskviit to parse a cookie string into a JavaScript object.
const Biskviit = require('biskviit');
const biskviit = new Biskviit();
const cookies = biskviit.parse('name=value; name2=value2');
console.log(cookies);
Create Cookie String
This feature allows you to create a cookie header string from an object. The code sample shows how to use Biskviit to convert a JavaScript object into a cookie string.
const Biskviit = require('biskviit');
const biskviit = new Biskviit();
const cookieString = biskviit.create({name: 'value', name2: 'value2'});
console.log(cookieString);
Set Cookie
This feature allows you to set a cookie with various options such as expiration time. The code sample demonstrates how to set a cookie with an expiration time using Biskviit.
const Biskviit = require('biskviit');
const biskviit = new Biskviit();
biskviit.set('name', 'value', {expires: new Date(Date.now() + 3600 * 1000)});
console.log(biskviit.cookies);
Other packages similar to biskviit
cookie
The 'cookie' package is a simple, lightweight library for parsing and serializing cookies. It provides similar functionality to Biskviit but is more widely used and has a larger community. It is also maintained by the same team that maintains the popular 'express' framework.
cookies
The 'cookies' package is another alternative that provides a more comprehensive API for handling cookies in Node.js. It supports both parsing and setting cookies, and it integrates well with the 'http' and 'https' modules. It is more feature-rich compared to Biskviit.
tough-cookie
The 'tough-cookie' package is a robust cookie management library that supports the full RFC 6265 spec. It is more advanced than Biskviit and is suitable for applications that require strict adherence to cookie standards and more complex cookie management features.
biskviit
Yet another node module for handling http cookies. This module parses Set-Cookie
header, stores the data to memory and returns valid value for Cookie
header once needed based on the stored cookie data.
NB Requires iojs or Node v4+ to support some ES6 features used by this module. Might work with older Node versions as well but not tested
Usage
Install from npm
npm install biskviit --save
Require as Biskviit
var Biskviit = require('biskviit');
Create a cookie managing biskviit instance
var biskviit = new Biskviit(options);
Where
- options is an optional options object with the following properties:
- sessionTimeout is the amount in seconds for default session length, used for cookies without an expire argument
Example
var Biskviit = require('biskviit');
var biskviit = new Biskviit({
sessionTimeout: 5 * 60
});
set
To add new cookies to the storage use set
biskviit.set(cookieString, url)
Where
- cookieString is the value from the
Set-Cookie:
header - url is the currently open URL that sent the cookie header
Example
biskviit.set('theme=light', 'http://example.com/');
biskviit.set('sessionToken=abc123; Expires=Wed, 09 Jun 2021 10:18:14 GMT', 'http://example.com/');
get
To list all available cookies for a specified URL use get
var cookiesString = biskviit.get(url);
Where
- url is the URL the cookies are required for
Example
var cookiesString = biskviit.get('http://example.com/');
list
If you need to filter cookies as objects, use list
var cookiesString = biskviit.list(url);
Where
- url is the URL the cookies are required for
Example
var cookiesString = biskviit.list('http://example.com/');
License
MIT