Mit der rasanten Entwicklung der Internettechnologie steigt auch die Zahl der Nutzer von Websites und Anwendungen. Um Anwendungen besser verwalten und warten zu können, entscheiden sich viele Entwickler für die Verwendung von Node.js als Back-End-Technologie. In Node.js ist die Anmeldeseite einer der wichtigen Teile der Anwendung. In diesem Artikel erfahren Sie, wie Sie Anmeldeseiten und Seitensprünge mithilfe von Node.js implementieren.
1. Erstellen Sie eine Anmeldeseite
In Node.js können wir ganz einfach eine Anmeldeseite über das HTTP-Modul und das Express-Framework erstellen. Zunächst müssen Sie das Express-Modul im Projektstammverzeichnis installieren.
npm install express --save
Erstellen Sie eine Datei namens index.js und fügen Sie das Express-Modul darin ein. Erstellen Sie auf dieser Grundlage eine Express-Instanz und geben Sie die Portnummer an.
const express = require('express'); const app = express(); app.listen(3000, () => { console.log('应用已启动,端口号为3000'); });
Als nächstes müssen wir eine Route erstellen, um die Anmeldeanfrage zu verarbeiten und die Anmeldeseite anzuzeigen.
app.get('/', (req, res) => { res.send(` <h1>登录页面</h1> <form method="POST" action="/login"> <input type="text" placeholder="用户名" /><br /> <input type="password" placeholder="密码" /><br /> <button type="submit">登录</button> </form> `); }); app.post('/login', (req, res) => { // 处理登录请求 });
Im obigen Code haben wir mithilfe der app.get-Methode eine Root-Route erstellt, um die Anmeldeseite anzuzeigen. Gleichzeitig wird die /login-Route mithilfe der app.post-Methode erstellt, um Anmeldeanfragen zu verarbeiten.
2. Anmeldeanfragen verarbeiten
Im vorherigen Abschnitt haben wir eine /login-Route erstellt, um Anmeldeanfragen zu bearbeiten. Auf diesem Weg können wir den Benutzernamen und das Passwort, die der Benutzer im Anmeldeformular eingegeben hat, über das req-Objekt abrufen und dann überprüfen.
Zum Beispiel können wir den Benutzernamen und das Passwort im Node.js-Programm zur Überprüfung fest codieren. Der Code lautet wie folgt:
app.post('/login', (req, res) => { const {username, password} = req.body; if (username === 'admin' && password === '123456') { res.send('登录成功!'); } else { res.send('用户名或密码不正确'); } });
Im obigen Code verwenden wir req.body, um den Benutzernamen und das Passwort im Anmeldeformular abzurufen . Anschließend erfolgt die Überprüfung anhand des Benutzernamens und des Kennworts. Wenn die Überprüfung erfolgreich ist, wird eine Meldung über die erfolgreiche Anmeldung zurückgegeben, andernfalls wird eine Meldung über die fehlgeschlagene Anmeldung zurückgegeben.
3. Seitensprung
Nach erfolgreicher Anmeldung springen wir den Benutzer normalerweise auf andere Seiten. In Node.js können wir die Methode res.redirect verwenden, um Seitensprünge zu implementieren und die Antwortergebnisse auf andere Routing-Adressen zu verweisen.
app.post('/login', (req, res) => { const {username, password} = req.body; if (username === 'admin' && password === '123456') { res.redirect('/home'); } else { res.send('用户名或密码不正确'); } }); app.get('/home', (req, res) => { res.send(` <h1>首页</h1> <p>欢迎访问首页</p> `); });
Verwenden Sie im obigen Code nach erfolgreicher Anmeldung res.redirect, um das Antwortergebnis auf die Route /home zu verweisen, bei der es sich um die Homepage handelt. Auf der Route /home können wir dem Benutzer den Inhalt der Homepage anzeigen.
4. Verwenden Sie Session, um die Benutzerauthentifizierung zu implementieren.
In Node.js-Anwendungen verwenden wir im Allgemeinen Session, um die Benutzerauthentifizierung zu implementieren. Nach erfolgreicher Anmeldung werden die Benutzerinformationen in der Sitzung gespeichert und der Inhalt der Sitzung muss beim Zugriff auf andere Seiten überprüft werden.
Die spezifischen Implementierungsschritte sind wie folgt:
1 Installieren Sie das Express-Session-Modul im Projektstammverzeichnis.
npm install express-session --save
2. Verwenden Sie das Express-Session-Modul, um sitzungsbezogene Parameter festzulegen.
const session = require('express-session'); app.use(session({ secret: 'keyboard cat', resave: false, saveUninitialized: true, cookie: { secure: false } }));
Im obigen Code verwenden wir die Methode app.use, um mithilfe der Express-Session-Middleware den Secret-Parameter, den Resave-Parameter, den saveUninitialized-Parameter und den Cookie-Parameter der Sitzung festzulegen.
3. Wenn die Anmeldung erfolgreich ist, speichern Sie die Benutzerinformationen in der Sitzung.
app.post('/login', (req, res) => { const {username, password} = req.body; if (username === 'admin' && password === '123456') { req.session.user = {username}; res.redirect('/home'); } else { res.send('用户名或密码不正确'); } });
Im obigen Code verwenden wir req.session.user, um die Informationen des aktuell angemeldeten Benutzers in der Sitzung zu speichern.
4. Führen Sie beim Zugriff auf andere Seiten eine Sitzungsüberprüfung durch.
app.get('/home', (req, res) => { if (req.session.user) { res.send(` <h1>首页</h1> <p>欢迎访问首页,${req.session.user.username}</p> `); } else { res.redirect('/'); } });
Im obigen Code verwenden wir zunächst die if-Anweisung, um festzustellen, ob Benutzerinformationen in der Sitzung vorhanden sind. Wenn vorhanden, zeigen Sie den Inhalt der Homepage an und zeigen Sie dem Benutzer den Benutzernamen des aktuell angemeldeten Benutzers an. Wenn es nicht vorhanden ist, leiten Sie zur Anmeldeseite weiter.
Zusammenfassung
In Node.js sind das Erstellen von Anmeldeseiten und Seitensprüngen wichtige Aspekte der Anwendungsentwicklung. Durch die Einleitung dieses Artikels haben wir gelernt, wie man mit Node.js und dem Express-Framework Anmeldeseiten erstellt, Anmeldeanfragen verarbeitet und Seitensprünge durchführt. Darüber hinaus haben wir gelernt, wie man Session zur Implementierung der Benutzerauthentifizierung verwendet. In tatsächlichen Anwendungen müssen Entwickler entsprechend den spezifischen Anwendungsszenarien entsprechende Anpassungen und Optimierungen vornehmen, um den Benutzeranforderungen gerecht zu werden.
Das obige ist der detaillierte Inhalt vonNodeJS-Anmeldeseite Sprungseite Sprungseite Sprung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!