UNPKG

react-jwt-store

Version:
68 lines (51 loc) 1.58 kB
# react-jwt-store React JWT user store ## Usage ```javascript let React = require('react'), userStore = require('react-jwt-store')(); class someComponent extends React.Component { constructor() { super(props); this.state = { user: userStore.getUser(), token: userStore.getToken() }; } render() { let user = this.state.user, token = this.state.token; return ( <div> <h1>{user}</h1> <h2>{token}</h1> } } ``` ### Set the token You can set the token without interacting with cookies via the following. ```javascript userStore.setToken('jwt') ``` ### Refresh the token You can force a refresh of the token via the following. ```javascript userStore.refreshToken() ``` ### Tweak the refresh timimg By default, the store will check to see if the token is about to expire every minute and refresh the token if it will expire within 5 minutes. This can be customized by setting the `refreshInterval` and `expiryWindow`, respectively. See below for an example. ```javascript let userStore = require('react-jwt-store')({ refreshInterval: 1000 // ms, expiryWindow: 15000 // ms }) ``` ### Override Cookie Key By default, the JWT assumes the cookie key is `XSRF-TOKEN`. This can be overridden by passing `cookie` on the `options` hash: ```javascript let userStore = require('react-jwt-store')({ cookie: 'NOT-XSRF-TOKEN'}); ``` ### Set a logger By default, the store does not log anything, but if you pass in a `console` compatible logger, the store will log the state of the token as it changes.