Blog
Formulaires de contact serverless : ce que « serverless » veut vraiment dire ici
· 5 min de lecture
« Serverless » est né comme un terme précis : votre code s'exécute sous forme de fonction, sur l'infrastructure de quelqu'un d'autre, et vous n'avez jamais à provisionner, corriger ou faire évoluer un serveur vous-même. Appliqué aux formulaires de contact, le terme a dérivé - il est désormais utilisé pour deux configurations vraiment différentes, et laquelle vous choisissez change la quantité de travail que vous acceptez d'assumer.
Voici la distinction, et où se situe un backend de formulaires hébergé dans tout ça.
Les deux choses que « formulaire de contact serverless » peut désigner
Cherchez cette expression et vous trouverez deux réponses différentes mélangées :
- Vous écrivez une fonction. Une AWS Lambda, un Cloudflare Worker, une fonction Vercel ou Netlify - un petit gestionnaire que vous déployez, qui reçoit le POST, envoie un e-mail via un fournisseur comme SES ou Resend, et renvoie une réponse.
- Vous n'écrivez aucun code backend. Votre formulaire envoie une requête POST directement vers un service hébergé qui existe déjà - aucune fonction à écrire, déployer ou versionner.
Les deux sont « serverless » au sens strict : aucun des deux n'implique une machine sur laquelle vous vous connectez en SSH pour la corriger. Mais ils se situent à des points très différents sur l'échelle de l'effort.
Option A : votre propre fonction
Écrire votre propre gestionnaire vous donne un contrôle total sur la charge utile, le modèle d'e-mail et la destination de stockage. Ce contrôle s'accompagne d'une véritable responsabilité :
- Les cold starts. Une fonction qui n'a pas tourné récemment met un moment à démarrer, ce qui se traduit par une première soumission lente sur les sites peu fréquentés.
- La délivrabilité des e-mails vous incombe. Enregistrements SPF, DKIM et DMARC, une réputation d'envoi à protéger, et un compte fournisseur à configurer et surveiller.
- Le filtrage anti-spam vous incombe. Rien n'empêche un bot d'envoyer un POST directement vers l'URL de votre fonction, sauf si vous construisez vous-même une limitation de débit, un honeypot ou un défi CAPTCHA.
- Le stockage vous incombe, si vous voulez le moindre historique. Sans appel à une base de données dans la fonction, une soumission dont l'envoi d'e-mail échoue disparaît tout simplement.
C'est le bon compromis quand le formulaire déclenche une vraie logique métier - écrire dans un CRM, lancer un workflow, tout ce qui dépasse « faire parvenir le message à un humain ». Pour un simple formulaire de contact, c'est beaucoup de plomberie indifférenciée à assumer.
Option B : aucun code backend
L'autre lecture de « serverless » élimine complètement la fonction. Votre <form> envoie un POST vers un point de terminaison qui existe déjà, géré par quelqu'un d'autre, où la réception, le filtrage anti-spam, les notifications et le stockage sont déjà construits et déjà en fonctionnement. Vous n'écrivez aucun code backend et ne déployez rien - il n'y a aucune fonction à vous à démarrer à froid, corriger ou surveiller, parce qu'il n'y a aucune fonction à vous dans le tableau.
Le compromis, c'est le contrôle : vous obtenez le filtre anti-spam du fournisseur, sa politique de rétention, ses canaux de notification - pas une logique sur mesure qui vous appartient. Pour un formulaire dont tout le travail consiste à « me faire parvenir la soumission de manière fiable », ce n'est presque jamais un coût réel.
Lequel convient vraiment à un formulaire de contact
La plupart des formulaires de contact n'ont pas besoin d'une logique de workflow sur mesure - ils doivent simplement atteindre un humain sans se perdre ni être filtrés comme spam. Si c'est là tout le travail, écrire et assumer une fonction revient à résoudre un problème que vous n'avez pas : vous passerez de vraies heures sur des enregistrements SPF et une logique de limitation de débit pour réinventer ce qu'un backend hébergé fait déjà. Optez pour votre propre fonction quand le formulaire alimente autre chose qu'une boîte de réception - une écriture en base de données, un workflow payant, un processus en plusieurs étapes qu'un service générique ne peut pas exprimer. (Pour le tableau plus large de ce que fait un backend de formulaires au quotidien, voir qu'est-ce qu'un backend de formulaires.)
Formhook : le point de terminaison qui existe déjà
Formhook est le second type de serverless. Pointez un formulaire vers https://formhook.app/f/{apiKey} et il n'y a rien à déployer, à démarrer à froid, ou à corriger - pas même une fonction. Le filtrage anti-spam (un champ honeypot, une limitation de débit, et Cloudflare Turnstile activé par défaut), le stockage, un tableau de bord consultable, et les notifications - e-mail plus notifications push sur tous les niveaux, y compris Gratuit - tournent déjà avant que vous n'écriviez la moindre ligne de code. Les webhooks sortants, avec détection automatique de Discord, Slack et Teams, couvrent les cas où vous voulez transmettre une soumission à un autre système, sans avoir non plus à écrire cette fonction réceptrice.
Le niveau Gratuit gère 250 soumissions par mois sans carte bancaire requise. Pro ajoute les téléversements de fichiers jusqu'à 10 Mo et un domaine d'envoi vérifié avec réponse directe ; Studio relève le plafond à 25 000 soumissions par mois pour les équipes. Consultez la documentation pour l'intégration elle-même, ou les tarifs pour le détail complet.
Mettez en ligne un formulaire fonctionnel en une ligne
Hébergé dans l'UE, soumissions conservées indéfiniment, notifications push sur tous les niveaux.
Commencer gratuitementSans carte bancaire · consultez la documentation
Continuer la lecture
- Qu'est-ce qu'un backend de formulaires ?Un backend de formulaires reçoit, stocke et transmet vos soumissions sans que vous ayez à gérer de serveur. Comment ça marche, et quand en avoir besoin.
- Comment ajouter un formulaire de contact à GitHub PagesGitHub Pages ne peut pas exécuter de code serveur, mais un formulaire de contact fonctionnel reste possible. Trois approches comparées en une minute.
- Comment ajouter un formulaire de contact à Cloudflare PagesCloudflare Pages n'a pas de service de gestion de formulaires intégré comme Netlify. Voici pourquoi, et la façon la plus rapide d'avoir quand même un formulaire de contact fonctionnel.