Cookies & Sessions
cookies(), (next/headers, se) Server, Components, aur, Server, Actions, mein, COOKIES, READ/SET, karne, ke, liye, USE, hota hai — HTTP-only, cookies, (JavaScript, se, ACCESS, NAHI, ho, sakti) SESSION, tokens, ke, liye, SAFER, hain.
Session, MANAGEMENT, mein, TYPICALLY, EK, SESSION, ID, (COOKIE, mein) STORE, hoti hai, JO, SERVER-SIDE, (DATABASE, ya, Redis) SESSION, DATA, se, LINK, hoti hai — YA, EK, SIGNED, JWT, SELF-CONTAINED, data, ke, saath.
import { cookies } from "next/headers";
// Server action mein, cookie, set karna:
export async function login(formData) {
"use server";
const sessionId = await createSession(formData);
const cookieStore = await cookies();
cookieStore.set("session", sessionId, { httpOnly: true, secure: true });
}- cookies() = Server Components/Actions, mein, cookies, READ/SET, karne, ke, liye
- httpOnly cookies, JavaScript, se, ACCESS, nahi, ho, sakti — XSS, se, SAFER
- Session ID (cookie) YA, self-contained, signed, JWT — dono, common, patterns, HAIN
Middleware, mein, request.cookies.get() se, cookies, PADHI, jaati, hain. Server, Components, mein, cookies() (next/headers) se — DONO, syntax, SLIGHTLY, DIFFERENT, hain, kyunki, WOH, DIFFERENT, RUNTIME, CONTEXTS, mein, hote, HAIN.
// Middleware:
const token = request.cookies.get("token");
// Server Component:
const cookieStore = await cookies();
const token = cookieStore.get("token");secure: true, (HTTPS-only), sameSite: "lax" ya, "strict" (CSRF, protection), aur, maxAge, (expiry) JAISE, ATTRIBUTES, PRODUCTION, cookies, ke, liye, ZAROORI, HAIN.