Authorisation Authentication in React

From Logic Wiki
Jump to: navigation, search


Login and Save Token in Local Storage

const { data: jwt } = await login(data.username, data.password);
localStorage.setItem("token", jwt);

Returning custom headers from backend

res.header("x-auth-token", token)
res.header("access-control-expose-headers", "x-auth-token")

Storing custom headers in LocalStorage

const response = await userService.register(this.state.data);
localStorage.setItem('token', response.headers['x-auth-token']);
this.props.history.push('/');

Extracting Name from Token

install jwt-decode package

npm i jwt-decode 

import it

import jwtDecode from ' jwt-decode';

extract it

try {
 const jwt = localStorage.getItem('token');
 const user = jwtDecode(jwt);
 this.setState({ user });
}...