Reactjs Rest管理员超时后自动注销
我希望用户在其身份验证令牌到期时自动注销。我如何在没有访问商店(因此也没有分派功能)的情况下分派注销操作? 我想用一个超时组件包装每个视图组件,然后发送注销,这似乎有些过头了 据我从github和github上了解,在不在组件中的情况下,无法从AOR的redux存储访问分派函数Reactjs Rest管理员超时后自动注销,reactjs,redux,admin-on-rest,Reactjs,Redux,Admin On Rest,我希望用户在其身份验证令牌到期时自动注销。我如何在没有访问商店(因此也没有分派功能)的情况下分派注销操作? 我想用一个超时组件包装每个视图组件,然后发送注销,这似乎有些过头了 据我从github和github上了解,在不在组件中的情况下,无法从AOR的redux存储访问分派函数 我如何实现自动注销(如注销操作一样,通过店铺清关)?您可以使用自定义传奇,请参阅 // in logoutIfTokenExpiredSaga.js import { call, put, takeEvery } fro
我如何实现自动注销(如注销操作一样,通过店铺清关)?您可以使用自定义传奇,请参阅
// in logoutIfTokenExpiredSaga.js
import { call, put, takeEvery } from 'redux-saga/effects';
import { userLogout } from 'admin-on-rest';
function getUserToken() {
return localStorage.getItem('token');
}
function hasTokenExpired(token) {
// Write your custom logic for token expiration check
}
function* autoLogout() {
const token = yield call(getUserToken);
const hasExpired = yield call(hasTokenExpired);
if (hasExpired) {
yield put(userLogout());
}
}
export default function* logoutIfTokenExpiredSaga() {
yield takeEvery('AOR/USER_LOGIN_SUCCESS', autoLogout);
}