Guia de roteador de aplicativo Next.js e SSR
Guia arquitetônico passo a passo para integrar Aurabase em um aplicativo Next.js 14/15 App Router com componentes de servidor, ações de servidor, middleware e sessões seguras.
O modelo SSR Aurabase
Em aplicativos modernos renderizados no lado do servidor, o estado de autenticação do usuário não pode ser armazenado no localStorage do navegador (inacessível pelo servidor). Aurabase sincroniza automaticamente a sessão em cookies HTTP seguros.
createServerClient não tem estado compartilhado na memória. Cada solicitação do servidor instancia um cliente isolado conectado aos cabeçalhos HTTP da solicitação, garantindo estanqueidade absoluta entre os usuários (risco zero de vazamentos de sessão).
Os 3 pilares do App Router
Os navegadores da Web limitam o tamanho de um cookie a aproximadamente 4 KB. Quando um token JWT ou metadados de usuário excede esse limite, o módulo @aurabase/aurabase-js/ssr divide automaticamente a carga em vários cookies numerados:
aura-[project_id]-auth.0(primeiros 3600 bytes)aura-[project_id]-auth.1(resto da sessão)
Após a leitura, o servidor remonta fielmente os pedaços para restaurar o estado sem qualquer perda de dados ou interrupção da sessão.
Regras de ouro na produção
Atributos HttpOnly e SameSite
Os cookies de token de atualização nunca devem ser expostos ao JavaScript do cliente para evitar ataques XSS.
Serviço de chave de função estritamente servidor
NUNCA passe seu SERVICE_ROLE_KEY para createBrowserClient ou componentes com a diretiva "use client".
Atualizar no Middleware
Sempre chame getSession() ou getUser() no middleware para renovar os tokens antes que eles expirem.