fix: Supprimer le fichier contact-backend.js et son code associé
This commit is contained in:
@@ -1,60 +0,0 @@
|
|||||||
// Backend minimal Node.js pour traiter le formulaire de contact Hugo
|
|
||||||
// Place ce fichier à la racine du projet ou dans un dossier backend/
|
|
||||||
// Nécessite: npm install express nodemailer cors
|
|
||||||
|
|
||||||
|
|
||||||
require('dotenv').config();
|
|
||||||
const express = require('express');
|
|
||||||
const nodemailer = require('nodemailer');
|
|
||||||
const cors = require('cors');
|
|
||||||
const multer = require('multer');
|
|
||||||
const upload = multer();
|
|
||||||
const app = express();
|
|
||||||
const PORT = process.env.PORT || 3001;
|
|
||||||
|
|
||||||
// Middleware
|
|
||||||
app.use(cors());
|
|
||||||
// NE PAS utiliser express.urlencoded/json pour /contact, sinon req.body sera vide avec FormData
|
|
||||||
|
|
||||||
// Configurer le transporteur SMTP depuis .env
|
|
||||||
const transporter = nodemailer.createTransport({
|
|
||||||
host: process.env.SMTP_HOST,
|
|
||||||
port: parseInt(process.env.SMTP_PORT, 10),
|
|
||||||
secure: process.env.SMTP_SECURE === 'true',
|
|
||||||
auth: {
|
|
||||||
user: process.env.SMTP_USER,
|
|
||||||
pass: process.env.SMTP_PASS
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
app.post('/contact', upload.none(), async (req, res) => {
|
|
||||||
// Vérification de la présence de req.body
|
|
||||||
if (!req.body) {
|
|
||||||
console.log(req.body);
|
|
||||||
return res.status(400).send('Aucune donnée reçue.');
|
|
||||||
}
|
|
||||||
// Anti-robot honeypot
|
|
||||||
if (req.body.website && req.body.website.trim() !== '') {
|
|
||||||
return res.status(400).send('Bot détecté.');
|
|
||||||
}
|
|
||||||
const { email, subject, message } = req.body;
|
|
||||||
if (!email || !subject || !message) {
|
|
||||||
return res.status(400).send('Champs manquants');
|
|
||||||
}
|
|
||||||
try {
|
|
||||||
await transporter.sendMail({
|
|
||||||
from: process.env.SMTP_USER,
|
|
||||||
to: process.env.SMTP_USER,
|
|
||||||
replyTo: email,
|
|
||||||
subject: `Contact site: ${subject}`,
|
|
||||||
text: `Email: ${email}\nSujet: ${subject}\nMessage:\n${message}`
|
|
||||||
});
|
|
||||||
res.status(200).send('Message envoyé !');
|
|
||||||
} catch (err) {
|
|
||||||
res.status(500).send("Erreur d'envoi: " + err.message);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
app.listen(PORT, () => {
|
|
||||||
console.log(`Serveur contact en écoute sur http://localhost:${PORT}`);
|
|
||||||
});
|
|
||||||
Reference in New Issue
Block a user