feat: 增加失去授权自动回到登录页功能

feat/desktop
moonrailgun 3 years ago
parent 7e8932880d
commit 5e157be6a4

@ -71,7 +71,11 @@ export { buildRegFn } from './manager/buildRegFn';
export { buildRegList } from './manager/buildRegList';
export { buildRegMap } from './manager/buildRegMap';
export { getServiceUrl, setServiceUrl } from './manager/service';
export { setTokenGetter, refreshTokenGetter } from './manager/request';
export {
setTokenGetter,
refreshTokenGetter,
setErrorHook,
} from './manager/request';
export { regSocketEventListener } from './manager/socket';
export { getStorage, setStorage, useStorage } from './manager/storage';
export {

@ -14,10 +14,13 @@ import {
request,
isValidStr,
isDevelopment,
setErrorHook,
showToasts,
} from 'tailchat-shared';
import { getPopupContainer } from './utils/dom-helper';
import { getUserJWT } from './utils/jwt-helper';
import _get from 'lodash/get';
import _debounce from 'lodash/debounce';
if (isDevelopment) {
import('source-ref-open-vscode');
@ -62,6 +65,33 @@ setGlobalLoading((text) => {
return hide;
});
const backToLoginPage = (() => {
let timer: number;
return () => {
if (timer) {
return;
}
console.warn('账号授权已过期, 2秒后自动跳转到登录页');
showToasts(t('账号授权已过期, 2秒后自动跳转到登录页'), 'warning');
timer = window.setTimeout(() => {
window.clearTimeout(timer);
window.location.href = '/entry/login';
}, 2000);
};
})();
setErrorHook((err) => {
if (_get(err, 'response.data.code') === 403) {
backToLoginPage();
return false;
}
return true;
});
/**
*
*/

Loading…
Cancel
Save