From 4a8ca3dbcf0a86c15887f75d3bef02c2bc7c2c5b Mon Sep 17 00:00:00 2001 From: Abhishek Bhonsle Date: Thu, 2 Jan 2020 09:31:28 +0530 Subject: [PATCH 1/3] added service for local storage of JWT token --- src/components/Dashboard/LoginPage.jsx | 35 ++++++-------------------- src/services/hackathon.js | 28 ++++++++++++++++++++- 2 files changed, 35 insertions(+), 28 deletions(-) diff --git a/src/components/Dashboard/LoginPage.jsx b/src/components/Dashboard/LoginPage.jsx index 6327ef3..8905f52 100644 --- a/src/components/Dashboard/LoginPage.jsx +++ b/src/components/Dashboard/LoginPage.jsx @@ -8,9 +8,9 @@ import loginBackgroundTreeOne from '../../img/login-background-tree-1.png'; import loginBackgroundTreeTwo from '../../img/login-background-tree-2.png'; import loginBackgroundTreeInvertOne from '../../img/login-background-tree-invert-1.png'; import loginBackgroundTreeInvertTwo from '../../img/login-background-tree-invert-2.png'; -import axios from 'axios' import {config} from '../../constants' import { Redirect } from 'react-router-dom' +import {getToken} from '../../services/hackathon'; class LoginPage extends Component { state = { @@ -50,36 +50,17 @@ class LoginPage extends Component { handleClick(event){ - - - var apiBaseUrl = config.BASE_URL const payload={ "email":this.state.username, "password":this.state.password } - - axios.post(apiBaseUrl+'/api/v1/account/login/', payload) - .then(function (response) { - console.log(response); - - if(response.status === 200){ - console.log("Login successfull"); - return - /* page redirect or load profile */ - - } - else if(response.status === 204){ - console.log("Username password do not match"); - alert("username password do not match") - } - else{ - console.log("Username does not exists"); - alert("Username does not exist"); - } - }) - .catch(function (error) { - console.log(error); - }); + getToken(payload).then((data) => { + console.log('token:', data.data.token); + // store token + localStorage.setItem("token", data.data.token); + }).catch((err) => { + console.log(err); + }); } render() { diff --git a/src/services/hackathon.js b/src/services/hackathon.js index 6022fff..b9a49a9 100644 --- a/src/services/hackathon.js +++ b/src/services/hackathon.js @@ -8,4 +8,30 @@ export const getAppStatus = payload => { ).catch((error) => { throw error; }); -}; \ No newline at end of file +}; + +export const getToken = payload => { + //console.log(payload); + return axios.post(config.BASE_URL+'/api/v1/account/login/', payload) + .then(function (response) { + console.log(response); + + if(response.status === 200){ + console.log("Login successfull"); + //return + /* page redirect or load profile */ + return response; + } + else if(response.status === 204){ + console.log("Username password do not match"); + alert("username password do not match") + } + else{ + console.log("Username does not exists"); + alert("Username does not exist"); + } + }) + .catch(function (error) { + console.log(error); + }); +} \ No newline at end of file From 79df82f996979f95de6b1b26a619c1ab6f2074b4 Mon Sep 17 00:00:00 2001 From: Abhishek Bhonsle Date: Thu, 2 Jan 2020 09:44:59 +0530 Subject: [PATCH 2/3] added service for local storage of JWT token --- src/components/Dashboard/LoginPage.jsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/components/Dashboard/LoginPage.jsx b/src/components/Dashboard/LoginPage.jsx index 8905f52..937431e 100644 --- a/src/components/Dashboard/LoginPage.jsx +++ b/src/components/Dashboard/LoginPage.jsx @@ -8,8 +8,6 @@ import loginBackgroundTreeOne from '../../img/login-background-tree-1.png'; import loginBackgroundTreeTwo from '../../img/login-background-tree-2.png'; import loginBackgroundTreeInvertOne from '../../img/login-background-tree-invert-1.png'; import loginBackgroundTreeInvertTwo from '../../img/login-background-tree-invert-2.png'; -import {config} from '../../constants' -import { Redirect } from 'react-router-dom' import {getToken} from '../../services/hackathon'; class LoginPage extends Component { From 107cb38f73519d8c5619e0e4797dd5ce2c7f63e2 Mon Sep 17 00:00:00 2001 From: Abhishek Bhonsle Date: Mon, 6 Jan 2020 19:08:27 +0530 Subject: [PATCH 3/3] added service for local storage of JWT token --- src/components/Dashboard/LoginPage.jsx | 21 ++++++++++++++++++--- src/services/hackathon.js | 17 +++++------------ 2 files changed, 23 insertions(+), 15 deletions(-) diff --git a/src/components/Dashboard/LoginPage.jsx b/src/components/Dashboard/LoginPage.jsx index 937431e..84d8a9c 100644 --- a/src/components/Dashboard/LoginPage.jsx +++ b/src/components/Dashboard/LoginPage.jsx @@ -53,9 +53,24 @@ class LoginPage extends Component { "password":this.state.password } getToken(payload).then((data) => { - console.log('token:', data.data.token); - // store token - localStorage.setItem("token", data.data.token); + //console.log('token:', data); + + if(data.status === 200){ + console.log("Login successfull"); + //return + /* page redirect or load profile */ + // store token + localStorage.setItem("token", data.token); + } + else if(data.status === 204){ + console.log("Username password do not match"); + alert("username password do not match") + } + else{ + console.log("Username does not exists"); + alert("Username does not exist"); + } + }).catch((err) => { console.log(err); }); diff --git a/src/services/hackathon.js b/src/services/hackathon.js index b9a49a9..f36c5d2 100644 --- a/src/services/hackathon.js +++ b/src/services/hackathon.js @@ -11,27 +11,20 @@ export const getAppStatus = payload => { }; export const getToken = payload => { - //console.log(payload); return axios.post(config.BASE_URL+'/api/v1/account/login/', payload) .then(function (response) { - console.log(response); - + //console.log(response); if(response.status === 200){ - console.log("Login successfull"); - //return - /* page redirect or load profile */ - return response; + return {status:response.status, token:response.data.token}; } else if(response.status === 204){ - console.log("Username password do not match"); - alert("username password do not match") + return {status:response.status}; } else{ - console.log("Username does not exists"); - alert("Username does not exist"); + return {status:404}; } }) .catch(function (error) { - console.log(error); + throw error; }); } \ No newline at end of file