Files
money.sori.studio/middleware/auth.global.ts
2026-08-13 17:47:01 +09:00

18 lines
430 B
TypeScript

export default defineNuxtRouteMiddleware(async (to) => {
if (to.path === '/login' || to.path.startsWith('/share/')) return
const session = useState<{ id: string; email: string; name: string } | null>('session')
if (session.value === undefined) {
try {
session.value = await $fetch('/api/auth/me')
} catch {
session.value = null
}
}
if (!session.value) {
return navigateTo('/login')
}
})