@coolgk/jwt

a simple jwt token class

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
@coolgk/jwt
2373.0.15 years ago6 years agoMinified + gzip package size for @coolgk/jwt in KB

Readme

@coolgk/jwt

a javascript / typescript module
npm install @coolgk/jwt
a simple jwt token class
Report bugs here: https://github.com/coolgk/node-utils/issues

Examples

import { Jwt } from '@coolgk/jwt';
// OR
// const { Jwt } = require('@coolgk/jwt');

const jwt = new Jwt({secret: 'abc'});

const string = 'http://example.com/a/b/c?a=1';

const token = jwt.generate(string);

console.log(
    jwt.verify(token), // { exp: 0, iat: 1512307492763, rng: 0.503008668963175, data: 'http://example.com/a/b/c?a=1' }
    jwt.verify(token+'1') // false
);

const token2 = jwt.generate(string, 200);

console.log(
    jwt.verify(token2), // { exp: 1512307493026, iat: 1512307492826, rng: 0.5832258275608753, data: 'http://example.com/a/b/c?a=1' }
    jwt.verify(token+'1') // false
);

setTimeout(() => {
    console.log(jwt.verify(token2)); // false
}, 250);

Jwt

Kind: global class
* [new Jwt(options)](#new_Jwt_new)
* [.generate(data, [expiry])](#Jwt+generate) ⇒ <code>string</code>
* [.verify(token)](#Jwt+verify) ⇒ <code>boolean</code> \| <code>object</code>

new Jwt(options)

| Param | Type | Description | | --- | --- | --- | | options | object | | | options.secret | string | for encryption |

jwt.generate(data, expiry) ⇒ string

Kind: instance method of Jwt
| Param | Type | Default | Description | | --- | --- | --- | --- | | data | \* | | any data can be JSON.stringify'ed | | expiry | number | 0 | in milliseconds 0 = never expire |

jwt.verify(token) ⇒ boolean \| object

Kind: instance method of Jwt
Returns: boolean \| object - - false or the payload of the token
| Param | Type | Description | | --- | --- | --- | | token | string | token to verify |