Les actions serveur sont particulièrement utiles lorsque la mutation est étroitement liée à la route qui rend l'interface utilisateur. Dans ce cas, elles éliminent beaucoup de code de liaison qui existait uniquement pour acheminer les données du formulaire dans un gestionnaire de route et en sortir.
C'est un véritable gain de productivité.
Où Elles Fonctionnent le Mieux
Les mutations locales à la route sont le point idéal :
- formulaires de paramètres
- mises à jour de profil
- commutateurs administratifs
- actions de gestion de contenu
Une action typique est petite et directe :
"use server";
export async function updateProfile(formData: FormData) {
const name = formData.get("name") as string;
await db.user.update({ where: { id: userId }, data: { name } });
}
Cela représente moins de code boilerplate qu'une couche API séparée pour chaque petit formulaire.
Ce Qu'elles Ne Remplacent Pas
Les actions serveur ne sont pas une raison pour supprimer les contrats explicites partout. Les API publiques, les intégrations, les clients mobiles et la communication de service à service bénéficient toujours de frontières bien définies.
C'est la véritable distinction architecturale :
- mutations proches de l'interface utilisateur : les actions serveur peuvent être excellentes
- contrats inter-équipes ou inter-clients : les API explicites ont toujours l'avantage
Règle Améliorée
Utilisez les actions serveur pour simplifier les mutations qui sont étroitement couplées à une interface utilisateur Next.js App Router. Gardez des frontières API explicites lorsque les consommateurs, la propriété ou la réutilisation s'étendent au-delà de cette route.
Cela vous donne un gain ergonomique sans prétendre que chaque préoccupation backend a disparu.
Lectures Complémentaires