20 lines
551 B
TypeScript
20 lines
551 B
TypeScript
import type { Handle } from '@sveltejs/kit';
|
|
|
|
export const handle: Handle = async ({ event, resolve }) => {
|
|
const cookie = event.request.headers.get('cookie') ?? '';
|
|
if (cookie) {
|
|
try {
|
|
const apiUrl = process.env.PUBLIC_API_URL ?? 'http://backend:8000';
|
|
const response = await fetch(`${apiUrl}/v1/auth/me`, {
|
|
headers: { cookie, 'X-App': 'internal' }
|
|
});
|
|
event.locals.user = response.ok ? await response.json() : null;
|
|
} catch {
|
|
event.locals.user = null;
|
|
}
|
|
} else {
|
|
event.locals.user = null;
|
|
}
|
|
return resolve(event);
|
|
};
|