import type {User} from "~/src/stores/auth";
export default defineNuxtRouteMiddleware(async (to, from) => {
if (!to.path.startsWith('/clientarea')) {
return;
}
const store = useAuthStore();
if(!store.isLoggedIn) {
return navigateTo('/auth/login');
}
const token = store.user?.token;
if (!token || token.expires_at < new Date()) {
return navigateTo('/auth/login');
}
try {
const response = await $fetch('/api/v1/me', {
headers: {
Authorization: `Bearer ${token.token}`
}
});
const user = await response as User;
store.setUser(user);
} catch (e) {
if(e) {
console.log('Logout User !')
//await store.logout();
//return navigateTo('/auth/login');
}
}
});
import type {User} from "~/src/stores/auth";
export default defineNuxtRouteMiddleware(async (to, from) => {
if (!to.path.startsWith('/clientarea')) {
return;
}
const store = useAuthStore();
if(!store.isLoggedIn) {
return navigateTo('/auth/login');
}
const token = store.user?.token;
if (!token || token.expires_at < new Date()) {
return navigateTo('/auth/login');
}
try {
const response = await $fetch('/api/v1/me', {
headers: {
Authorization: `Bearer ${token.token}`
}
});
const user = await response as User;
store.setUser(user);
} catch (e) {
if(e) {
console.log('Logout User !')
//await store.logout();
//return navigateTo('/auth/login');
}
}
});