Files
librodrome/server/api/admin/auth/check.get.ts
2026-02-20 12:55:10 +01:00

21 lines
567 B
TypeScript

export default defineEventHandler((event) => {
const config = useRuntimeConfig()
if (!config.adminSecret) {
throw createError({ statusCode: 503, statusMessage: 'Admin not configured' })
}
const token = getAdminToken(event)
if (!token) {
throw createError({ statusCode: 401, statusMessage: 'Not authenticated' })
}
const payload = verifyToken(token, config.adminSecret)
if (!payload) {
clearAdminCookie(event)
throw createError({ statusCode: 401, statusMessage: 'Invalid or expired token' })
}
return { authenticated: true }
})