fix(auth): update token validation method in layout store
This commit is contained in:
@@ -1,23 +1,14 @@
|
|||||||
import { Query, DataOpts } from '@kevisual/query';
|
import { Query, DataOpts } from '@kevisual/query';
|
||||||
import { QueryLoginBrowser } from '@kevisual/api/query-login'
|
import { QueryLoginBrowser } from '@kevisual/api/login'
|
||||||
import { useContextKey } from '@kevisual/context';
|
import { useContextKey } from '@kevisual/context';
|
||||||
export const query = useContextKey('query', new Query({
|
export const query = useContextKey('query', new Query({
|
||||||
url: '/api/router',
|
url: '/api/router',
|
||||||
}));
|
}));
|
||||||
const afterResponse: DataOpts['afterResponse'] = async (response, ctx) => {
|
|
||||||
if (response.code === 401) {
|
|
||||||
await queryLogin.logout();
|
|
||||||
setTimeout(() => { location.reload() }, 2000);
|
|
||||||
}
|
|
||||||
return response;
|
|
||||||
}
|
|
||||||
query.after(afterResponse);
|
|
||||||
|
|
||||||
export const queryClient = useContextKey('queryClient', new Query({
|
export const queryClient = useContextKey('queryClient', new Query({
|
||||||
url: '/client/router',
|
url: '/client/router',
|
||||||
}));
|
}));
|
||||||
|
|
||||||
queryClient.after(afterResponse);
|
|
||||||
export const queryLogin = useContextKey('queryLogin', new QueryLoginBrowser({
|
export const queryLogin = useContextKey('queryLogin', new QueryLoginBrowser({
|
||||||
query: query
|
query: query
|
||||||
}));
|
}));
|
||||||
@@ -53,7 +53,7 @@ export const useLayoutStore = create<LayoutStore>((set, get) => ({
|
|||||||
isAdmin: false,
|
isAdmin: false,
|
||||||
setIsAdmin: (isAdmin) => set({ isAdmin }),
|
setIsAdmin: (isAdmin) => set({ isAdmin }),
|
||||||
init: async () => {
|
init: async () => {
|
||||||
const token = await queryLogin.getToken()
|
const token = await queryLogin.checkTokenValid()
|
||||||
if (token) {
|
if (token) {
|
||||||
const user = await queryLogin.checkLocalUser() as UserInfo;
|
const user = await queryLogin.checkLocalUser() as UserInfo;
|
||||||
if (user) {
|
if (user) {
|
||||||
|
|||||||
Reference in New Issue
Block a user