Rute Terproteksi dalam Hook handle()
Alihkan pengguna yang belum terautentikasi dari rute terproteksi di dalam hook handle.
Rute Terproteksi dalam Hook handle() adalah pelajaran Sveltejs Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Sveltejs Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Sveltejs Academy mencakup 4 pelajaran total.
Lindungi di Edge
Pusatkan perlindungan rute di hook handle agar tersedia satu sumber kebenaran.
Periksa Locals
Jika Anda menetapkan event.locals.user dalam handle, periksa nilainya untuk jalur yang dilindungi.
export async function handle({ event, resolve }) {
event.locals.user = await getUser(event);
if (event.url.pathname.startsWith("/admin") && !event.locals.user) {
return new Response("Unauthorized", { status: 302, headers: { Location: "/login" } });
}
return resolve(event);
}Akses Berbasis Peran
Periksa peran pengguna untuk membatasi akses ke bagian tertentu.
if (event.url.pathname.startsWith("/admin") && event.locals.user?.role !== "admin") redirect(...);Cadangan Fungsi Load
Di dalam load +page.server.js, lakukan redirect jika locals.user tidak ada sebagai lapisan keamanan tambahan.
Rute Publik dan Privat
Gunakan pencocok jalur atau batas tata letak untuk membedakannya.
Hindari Pemeriksaan per Halaman
Pemeriksaan terpusat mencegah rute terlewat yang dapat mengekspos data sensitif.
URL Pengembalian
Encode URL asli sebagai parameter kueri agar pengguna kembali setelah masuk.
redirect(303, `/login?next=${encodeURIComponent(event.url.pathname)}`);Rute API
Lindungi endpoint API (+server.js) dengan logika hook yang sama.
Kinerja
Pemeriksaan autentikasi harus cepat. Simpan data pengguna dalam cache per permintaan melalui locals.
Konsistensi SSR
Autentikasi terpusat memastikan perilaku yang konsisten pada permintaan yang dirender server maupun yang dinavigasi klien.
Pengujian
Autentikasi berbasis hook lebih mudah diuji secara terisolasi daripada pemeriksaan yang tersebar di setiap halaman.
Pemeriksaan Singkat
Di mana perlindungan rute sebaiknya dilakukan?
Ringkasan
Pusatkan perlindungan rute di handle, dengan memeriksa locals.user dan mengarahkan permintaan yang tidak berwenang.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Rute Terproteksi dalam Hook handle()” gratis?
Ya — teks lengkap “Rute Terproteksi dalam Hook handle()” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Sveltejs Academy, upgrade ke CoddyKit PRO. Kursus Sveltejs Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Rute Terproteksi dalam Hook handle()”?
Alihkan pengguna yang belum terautentikasi dari rute terproteksi di dalam hook handle. Kamu berlatih Sveltejs Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Sveltejs Academy?
Tidak diperlukan pengalaman sebelumnya. Sveltejs Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Rute Terproteksi dalam Hook handle()” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Sveltejs Academy ini?
Ya. Setiap pelajaran Sveltejs Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Sesi Berbasis Cookie
- JWT dalam Cookie HTTP-Only
- Rute Terproteksi dalam Hook handle()
- OAuth dengan SvelteKit dan Lucia Auth