diff --git a/README.md b/README.md index a69425e..a624fd4 100644 --- a/README.md +++ b/README.md @@ -2,11 +2,13 @@ A lightweight JWT implementation with ZERO dependencies for Cloudflare Workers. + ## Contents - [Install](#install) -- [Usage](#usage) - [Examples](#examples) +- [Usage](#usage) + ## Install @@ -14,6 +16,48 @@ A lightweight JWT implementation with ZERO dependencies for Cloudflare Workers. npm i @tsndr/cloudflare-worker-jwt ``` + +## Examples + +### Basic Example + +```javascript +async () => { + const jwt = require('@tsndr/cloudflare-worker-jwt') + + // Creating a token + const token = await jwt.sign({ name: 'John Doe', email: 'john.doe@gmail.com' }, 'secret') + + // Verifing token + const isValid = await jwt.verify(token, 'secret') + + // Decoding token + const payload = jwt.decode(token) +} +``` + +### Restrict Timeframe + +```javascript +async () => { + const jwt = require('@tsndr/cloudflare-worker-jwt') + + // Creating a token + const token = await jwt.sign({ + name: 'John Doe', + email: 'john.doe@gmail.com', + nbf: Math.floor(Date.now() / 1000) + (60 * 60), // Not before: Now + 1h + exp: Math.floor(Date.now() / 1000) + (2 * (60 * 60)) // Expires: Now + 2h + }, 'secret') + + // Verifing token + const isValid = await jwt.verify(token, 'secret') // false + + // Decoding token + const payload = jwt.decode(token) // { name: 'John Doe', email: 'john.doe@gmail.com', ... } +} +``` + ## Usage
@@ -59,45 +103,4 @@ Argument | Type | Satus | Default | Description `token` | `string` | required | - | The token string generated by `jwt.sign()`. #### `return` -Returns payload `object`. - -## Examples - -### Basic Example - -```javascript -async () => { - const jwt = require('@tsndr/cloudflare-worker-jwt') - - // Creating a token - const token = await jwt.sign({ name: 'John Doe', email: 'john.doe@gmail.com' }, 'secret') - - // Verifing token - const isValid = await jwt.verify(token, 'secret') - - // Decoding token - const payload = jwt.decode(token) -} -``` - -### Restrict Timeframe - -```javascript -async () => { - const jwt = require('@tsndr/cloudflare-worker-jwt') - - // Creating a token - const token = await jwt.sign({ - name: 'John Doe', - email: 'john.doe@gmail.com', - nbf: Math.floor(Date.now() / 1000) + (60 * 60), // Not before: Now + 1h - exp: Math.floor(Date.now() / 1000) + (2 * (60 * 60)) // Expires: Now + 2h - }, 'secret') - - // Verifing token - const isValid = await jwt.verify(token, 'secret') // false - - // Decoding token - const payload = jwt.decode(token) // { name: 'John Doe', email: 'john.doe@gmail.com', ... } -} -``` \ No newline at end of file +Returns payload `object`. \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 97658ef..4b16c43 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@tsndr/cloudflare-worker-jwt", - "version": "1.0.7", + "version": "1.1.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@tsndr/cloudflare-worker-jwt", - "version": "1.0.7", + "version": "1.1.2", "license": "MIT", "devDependencies": { "tslint": "^6.1.3" diff --git a/package.json b/package.json index c2740bf..7d31788 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@tsndr/cloudflare-worker-jwt", - "version": "1.1.1", + "version": "1.1.2", "description": "A lightweight JWT implementation with ZERO dependencies for Cloudflare Worker", "main": "index.js", "scripts": {