In diesem Artikel wird das Erstellen sicherer und funktionaler HTML -Formulare in Node.js und Express, Deckung von Get- und Post -Anfragen, Eingabevalidierung, Bereinigung und Datei -Uploads erstellt. Lassen Sie uns Schritt für Schritt den Prozess untersuchen.
Formularbehandlung umfasst in der Regel: Anzeigen eines leeren Formulars (GET-Anforderung), Empfangen von Benutzerdaten (Postanforderung), clientseitig und serverseitig Validierung, Neudisplay des Formulars mit Fehlern (falls ungültig), verarbeiten gültige Daten, und den Benutzer umleiten. Die Sicherheit ist von größter Bedeutung und erfordert HTTPS, Schutz vor CSRF- und XSS -Angriffen und sorgfältige Eingabeeingänge.
Schlüsselkonzepte:
express-validator
: Middleware zur Validierung und Bereinigung von Benutzereingaben und Verhinderung von Sicherheitslücken. csurf
& helmet
: Middleware für CSRF- und XSS -Schutz. multer
: Middleware zum sicheren und effizienten Abladen von Dateien. express-flash
: Erleichtert das Anzeigen von einmaligen Nachrichten nach Auslösten. Setup:
sicherstellen, dass Node.js (Version 8.9.0 oder höher) installiert ist. Der Startercode (verfügbar auf GitHub) bietet ein grundlegendes Express -Setup mit EJS -Vorlagen und Fehlerbehandlung.
Zeigen Sie das Formular an (Anfrage erhalten):
Eine Get -Anforderung an /contact
rendert ein Kontaktformular (mit contact.ejs
), mit der Benutzer eine Nachricht und eine E -Mail -Adresse eingeben können.
Formulareingabe (Postanforderung):
Die body-parser
Middleware ist entscheidend für den Zugriff auf Postdaten. Die /contact
Post -Route behandelt die Einreichung von Formular:
express-validator
Überprüfungen für erforderliche Felder und gültiges E -Mail -Format. check('message').isLength({ min: 1 }).withMessage('Message is required').trim()
und check('email').isEmail().withMessage('Invalid email').bail().trim().normalizeEmail()
sind Beispiele. trim()
und normalizeEmail()
Eingabe räumen. matchedData(req)
ruft sanitäre Daten ab. /
umgeleitet. Sicherheit:
csurf
Middleware generiert und validiert CSRF -Token. Datei -Uploads:
multer
Middleware verarbeitet Datei -Uploads. Das Formular des Formulars enctype
muss auf "multipart/form-data"
gesetzt werden. multer.memoryStorage()
speichert hochgeladene Dateien im Speicher (diskutieren Sie den Speicher für größere Dateien). Fehlerbehandlung und Dateispeicher (z. B. für Cloud -Speicher wie AWS S3) sind zusätzliche Überlegungen.
Weitere Verbesserungen:
Der Artikel schlägt zusätzliche Schritte vor, z. B.
Diese überarbeitete Antwort bietet eine prägnantere und organisiertere Zusammenfassung des Inhalts des Artikels, während die technischen Details des Originals beibehalten und die Bilder in ihrem ursprünglichen Format beibehalten.
Das obige ist der detaillierte Inhalt vonFormulare, Datei -Uploads und Sicherheit mit Node.js und Express. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!