javascript / expert
Snippet
Serverseitige Request-Interception mit SvelteKit Hooks
SvelteKit Hooks ermöglichen es, Anfragen abzufangen und zu modifizieren, bevor sie die Routen erreichen. Dies ist ideal für globale Middleware-Aufgaben wie Authentifizierungsprüfungen und HTML-Transformationen.
snippet.js
1
2
3
4
5
6
7
8
9
10
11
12
/** @type {import('@sveltejs/kit').Handle} */export async function handle({ event, resolve }) {const token = event.cookies.get('session');if (!token && event.url.pathname.startsWith('/admin')) {return new Response('Unauthorized', { status: 401 });}const response = await resolve(event, {transformPageChunk: ({ html }) => html.replace('%lang%', 'en')});return response;}
svelte
Erklärung
1
export async function handle({ event, resolve })
Definiert den zentralen Handle-Hook, der jede Anfrage an den Server verarbeitet.
2
event.cookies.get('session')
Extrahiert das Session-Cookie, um die Benutzeridentität vor dem Fortfahren zu überprüfen.
3
transformPageChunk
Ein Callback, um den HTML-Buffer dynamisch zu modifizieren, bevor er an den Client gesendet wird.