Przewodnik po routerze aplikacji Next.js i SSR
Przewodnik architektoniczny krok po kroku dotyczący integracji Aurabase z aplikacją routera aplikacji Next.js 14/15 ze składnikami serwera, akcjami serwera, oprogramowaniem pośredniczącym i bezpiecznymi sesjami.
Model Aurabase SSR
W nowoczesnych aplikacjach renderowanych po stronie serwera stan uwierzytelnienia użytkownika nie może być przechowywany w localStorage przeglądarki (niedostępny dla serwera). Aurabase automatycznie synchronizuje sesję w bezpiecznych plikach cookie HTTP.
createServerClient nie ma w pamięci stanu współdzielonego. Każde żądanie serwera tworzy instancję izolowanego klienta podłączonego do nagłówków HTTP żądania, gwarantując absolutną szczelność między użytkownikami (zero ryzyka wycieków sesji).
Router aplikacji z trzema filarami
Przeglądarki internetowe ograniczają rozmiar pliku cookie do około 4 KB. Kiedy token JWT lub metadane użytkownika przekraczają ten limit, moduł @aurabase/aurabase-js/ssr automatycznie dzieli obciążenie na kilka ponumerowanych plików cookie:
aura-[project_id]-auth.0(pierwsze 3600 bajtów)aura-[project_id]-auth.1(reszta sesji)
Po odczycie serwer wiernie ponownie składa fragmenty, aby przywrócić stan bez utraty danych lub przerwania sesji.
Złote zasady w produkcji
Atrybuty HttpOnly i SameSite
Pliki cookie tokenu odświeżania nigdy nie powinny być udostępniane JavaScriptowi klienta, aby zapobiec atakom XSS.
Usługa Role Key ściśle serwerowa
NIGDY nie przekazuj swojego SERVICE_ROLE_KEY do createBrowserClient lub komponentów z dyrektywą „use client”.
Odśwież w oprogramowaniu pośrednim
Zawsze wywołuj funkcję getSession() lub getUser() w oprogramowaniu pośrednim, aby odnowić tokeny przed ich wygaśnięciem.