📖
Next.js

Server Action

Função 'use server' que executa no servidor mas pode ser chamada pelo cliente. Sem API route.

📚 O que é

Marcada com 'use server'. Pode ser usada como action de form ou chamada de Client Component. Next.js cuida de serialização, routing e CSRF protection automático.

✅ Quando usar

Mutações de dados (create, update, delete). Formulários. Ações tightly-coupled ao seu app. Quando você quer eliminar boilerplate de API route.

🚫 Quando NÃO usar

APIs públicas para terceiros (use Route Handler). Endpoints consumidos por apps mobile nativa. Webhooks recebidos de serviços externos.

👍 Prós
Sem boilerplate de API
CSRF protection automático
Funciona sem JS (progressive enhancement)
revalidatePath/Tag integrado
👎 Contras
Tightly-coupled ao Next.js
Não é API pública
Serialização limitada (só JSON)
Ainda experimental em alguns aspectos
🔗 Termos relacionados