Enabled Json Web Token authorisation on backend, and frontend
This commit is contained in:
@@ -38,19 +38,27 @@ export const validateAccessToken = (token) => {
|
||||
return dispatch => {
|
||||
dispatch(validateToken());
|
||||
return htmlClient.fetch({
|
||||
url: `${API_SERVER}/login/api/validateToken`
|
||||
url: `http://localhost//wp-json/jwt-auth/v1/token/validate`,
|
||||
method: 'post'
|
||||
})
|
||||
.then(response => {
|
||||
if (response.data && response.data.status === 'success') {
|
||||
const serverTime = response.data.serverTime || 1;
|
||||
if (response.data && response.data.status === 200) {
|
||||
|
||||
// TODO: Implement refresh logic on backend as it was on old wias , or find a nother way
|
||||
// to handle token validation another way
|
||||
|
||||
|
||||
|
||||
// const serverTime = response.data.serverTime || 1;
|
||||
|
||||
dispatch(loggedIn({
|
||||
accessToken: token,
|
||||
userInfo: response.data.userInfo
|
||||
accessToken: token
|
||||
// userInfo: response.data.userInfo
|
||||
}));
|
||||
refreshToken = response.data.refreshToken;
|
||||
startRefreshTimer(dispatch, serverTime);
|
||||
dispatch(setUserAsCompanyAdmin(response.data.userInfo.wiaas_is_company_admin));
|
||||
// refreshToken = response.data.refreshToken;
|
||||
// startRefreshTimer(dispatch, serverTime);
|
||||
// dispatch(setUserAsCompanyAdmin(response.data.userInfo.wiaas_is_company_admin));
|
||||
dispatch(setUserAsCompanyAdmin(false));
|
||||
} else {
|
||||
dispatch(loginFail(response.data));
|
||||
}
|
||||
@@ -66,30 +74,34 @@ export const setUserAsCompanyAdmin = (isCompanyAdmin) => ({type: SET_COMPANY_ADM
|
||||
|
||||
export const validateCredentials = (username, password) => {
|
||||
return dispatch => {
|
||||
|
||||
dispatch(login());
|
||||
return htmlClient.fetch({
|
||||
url: `${API_SERVER}/login/api/getToken`,
|
||||
method: 'post',
|
||||
data: {
|
||||
username,
|
||||
password,
|
||||
login: true
|
||||
},
|
||||
header: {}
|
||||
})
|
||||
url: `http://localhost/wp-json/jwt-auth/v1/token`,
|
||||
method: 'post',
|
||||
data: {
|
||||
"username": username,
|
||||
"password": password
|
||||
}
|
||||
})
|
||||
.then(response => {
|
||||
if (response.data.status === 'success') {
|
||||
const decodedAceessToken = jwtDecode(response.data.accessToken);
|
||||
if(decodedAceessToken.data.wiaas_user_type === 'customer'){
|
||||
localStorage.setItem('accessToken', response.data.accessToken);
|
||||
const serverTime = response.data.serverTime || 1;
|
||||
refreshToken = response.data.refreshToken;
|
||||
startRefreshTimer(dispatch, serverTime);
|
||||
dispatch(loggedIn(response.data));
|
||||
dispatch(setUserAsCompanyAdmin(response.data.userInfo.wiaas_is_company_admin));
|
||||
}else{
|
||||
dispatch(loginFail({status: 'fail', errorMessage: 'INVALID_USER_TYPE'}));
|
||||
}
|
||||
if (response.data && response.data.token) {
|
||||
const decodedAceessToken = jwtDecode(response.data.token);
|
||||
|
||||
// TODO : Uncomment code, and fix user type logic after adding customer type to woocommerce backend
|
||||
|
||||
// if(decodedAceessToken.data.wiaas_user_type === 'customer'){
|
||||
localStorage.setItem('accessToken', response.data.token);
|
||||
const serverTime = decodedAceessToken.nbf || 1;
|
||||
// refreshToken = response.data.refreshToken;
|
||||
startRefreshTimer(dispatch, serverTime);
|
||||
dispatch(loggedIn(response.data));
|
||||
// dispatch(setUserAsCompanyAdmin(response.data.userInfo.wiaas_is_company_admin));
|
||||
dispatch(setUserAsCompanyAdmin(false));
|
||||
|
||||
// }else{
|
||||
// dispatch(loginFail({status: 'fail', errorMessage: 'INVALID_USER_TYPE'}));
|
||||
// }
|
||||
} else {
|
||||
dispatch(loginFail(response.data));
|
||||
}
|
||||
@@ -187,8 +199,8 @@ export const logout = () => {
|
||||
export const loggedIn = (jsonData) => {
|
||||
return {
|
||||
type: LOGIN_SUCCESS,
|
||||
isLoggedIn: true,
|
||||
userInfo: jsonData.userInfo
|
||||
isLoggedIn: true
|
||||
// userInfo: jsonData.userInfo
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user