@coolgk/jwt
a javascript / typescript modulenpm 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 |