🚧
Middleware & Auth

Protecting Routes

Auth Guards in Server Components
💡 Protected, routes, EK, "VIP, AREA" jaisa, hai — SIRF, VALID, "PASS" (AUTHENTICATION) waale, hi, ANDAR, JAA, sakte, HAIN — CHECK, MULTIPLE, LEVELS, PAR, ho, sakta hai (ENTRANCE, GATE, MIDDLEWARE, aur, ANDAR, ROOM, mein, — page, level).

Middleware, EARLY, CHECK, hai (JITNA, JALDI, POSSIBLE, ho, UNAUTHENTICATED, users, ko, REDIRECT, karna). Server, Component, level, PAR, bhi, EK, CHECK, RAKHNA, GOOD, PRACTICE, hai — "DEFENSE, IN, DEPTH".

Server, Component, mein, session/auth, CHECK, karके, redirect() (next/navigation, se) CALL, kiya, ja, sakta hai — YE, ENSURE, karta hai, ki, PAGE, ka, CONTENT, KABHI, UNAUTHORIZED, user, ko, na, dikhe.

import { redirect } from "next/navigation";
import { auth } from "@/auth";

export default async function DashboardPage() {
  const session = await auth();
  if (!session) {
    redirect("/login");
  }
  return <div>Welcome, {session.user.name}</div>;
}
🚧
Protected, routes, EK, "VIP, AREA" jaisa, hai — SIRF, VALID, "PASS" (AUTHENTICATION) waale, hi, ANDAR, JAA, sakte, HAIN — CHECK, MULTIPLE, LEVELS, PAR, ho, sakta hai (ENTRANCE, GATE, MIDDLEWARE, aur, ANDAR, ROOM, mein, — page, level).
1 / 2
⚡ Quick Recap
  • Middleware = EARLY, check, unauthenticated, users, ko, JALDI, redirect
  • Server component, level, PAR, bhi, check, rakhna, "defense, in, depth" hai
  • redirect(), se, unauthorized, users, ko, PROTECTED, content, dikhne, se, ROKA, jaata, hai
Is page mein (2 subtopics)

Ek, layout.js, (jaise, app/dashboard/layout.js) mein, auth, check, RAKHNE, se, USKE, SAARE, NESTED, routes, AUTOMATICALLY, PROTECTED, ho, jaate, HAIN — HAR, INDIVIDUAL, page, mein, SEPARATELY, check, likhne, ki, ZAROORAT, nahi.

// app/dashboard/layout.js:
export default async function DashboardLayout({ children }) {
  const session = await auth();
  if (!session) redirect("/login");
  return <div>{children}</div>;
}

Auth, check, ke, DAURAN, EK, loading.js, file, se, EK, LOADING, state, DIKHAYA, ja, sakta hai — SUSPENSE, boundary, ke, ANDAR, session, verify, hone, ka, WAIT, karte, hue.