Heim >Web-Frontend >Front-End-Fragen und Antworten >nodejs erhält eine Anforderungssitzung
Node.js ist eine serverseitige JavaScript-Laufzeitumgebung, die schnell, plattformübergreifend und modular ist und effiziente und stabile serverseitige Anwendungen erstellen kann. Bei der Entwicklung von Webanwendungen wird SESSION verwendet. Wie erhält man also die angeforderten SESSION-Informationen in Node.js? In diesem Artikel wird erläutert, wie Sie die Anforderung SESSION aus den Aspekten des SESSION-Konzepts, den entsprechenden Sitzungsmodulen in Node.js und spezifischen API-Informationen erhalten.
1. Das Konzept von SESSION
SESSION ist ein Cross-Request-Mechanismus zum Speichern von Benutzerinformationen und -vorgängen. Durch das Speichern der SESSION-Variablen können Benutzer beim Besuch verschiedener Seiten der Website angemeldet bleiben und Daten zwischen verschiedenen Seiten übertragen. . SESSION ist eine serverseitige Statusaufbewahrungsmethode, bei der jeder Sitzung eine eindeutige ID zugewiesen und diese dann auf dem Client (normalerweise im Cookie des Clients) gespeichert wird, um die Kommunikation zwischen dem Server und dem Client zu verfolgen. Für jede neue Sitzung wird eine neue ID zur Nachverfolgung erstellt.
In der Webentwicklung kann SESSION verwendet werden, um die Sicherheit zu optimieren, die Benutzererfahrung zu verbessern, benutzerspezifische Bedürfnisse zu realisieren usw.
2. Die Verwendung von Session in Node.js
In Node.js gibt es ein häufig verwendetes SESSION-Modul Express-Session, das Express-Anwendungen Sitzungsunterstützung hinzufügen kann. Wir könnten genauso gut verstehen, wie man es benutzt:
1. Installieren Sie das Express-Session-Modul
Geben Sie den folgenden Befehl in die Befehlszeile ein:
npm install express-session
2. Führen Sie Express-Session in das Projekt ein:
In Ihrem Projekt Fügen Sie den folgenden Code hinzu:
var express = require('express'); var session = require('express-session'); var app = express();
3. Verwenden Sie Express-Session-Middleware
Fügen Sie in Ihrem Projekt den folgenden Code hinzu:
app.use(session({ secret: 'keyboard cat',//secret的值建议使用随机字符串 cookie: { maxAge: 60000 }, resave: true, saveUninitialized: true }))
Darunter:
4 SESSION festlegen und abrufen
In Ihrem Projekt können Sie SESSION über den folgenden Code festlegen und abrufen:
Set:
req.session.userName="tom";
Get:
var userName = req.session.userName;
Als nächstes werden wir anhand von Beispielen erklären, wie man die Anfrage-SESSION-Informationen in Node.js erhält.
3. Spezifische API-Informationen
Um besser zu verstehen, wie Sie die SESSION-Anfrageinformationen erhalten, verstehen wir zunächst die API, die SESSION in Node.js entspricht.
req.session
Dies ist die Anforderungs-Middleware der Sitzung, die die Konversationssteuerung durch Schreiben von req.session realisieren kann. Anwendungsbeispiel ist:
req.session.userName='xiaoming';
Der obige Code implementiert das Hinzufügen von userName
zur Sitzung. In Express werden Konversationsinformationen in einer Sitzung gespeichert, einem Objekt, das wie ein normales JavaScript-Objekt manipuliert werden kann.
req.session.destroy
Dieses Attribut gibt an, dass beim Beenden des Benutzers die in der Sitzung gespeicherten Daten gelöscht werden. Anwendungsbeispiel ist:
req.session.destroy(function(err) { // cannot access session here })
Wenn die Sitzung zerstört wird, wird die Rückruffunktion ausgeführt.
4. Beispieldemonstration
Als nächstes demonstrieren wir anhand eines Beispiels, wie man die SESSION-Anfrageinformationen erhält.
1. Erstellen Sie das Projekt. Initialisieren Sie zunächst das Projekt und erstellen Sie die Datei main.js:
mkdir node-app && cd node-app npm init touch main.jsexpress-session und stellen Sie sie vor:
npm install express --save npm install express-session --saveSchreiben Sie den folgenden Code in main.js:
const express = require('express') const session = require('express-session') const app = express() app.use(session({ secret: 'keyboard cat',//secret的值建议使用随机字符串 cookie: { maxAge: 60000 }, resave: true, saveUninitialized: true })) app.get('/login', (req, res) => { req.session.userName = 'Qiming' res.send('login success') }) app.get('/home', (req, res) => { let userName = req.session.userName if (userName) { res.send(`welcome ${userName}`) } else { res.send('please login first') } }) const server = app.listen(3000, () => { console.log(`app is running at http://localhost:${server.address().port}`) })Im obigen Code:
Führen Sie zuerst die Express- und Express-Session-Module ein
Erstellen Sie das Anwendungs-App-Objekt und fügen Sie das hinzu Sitzungs-Middleware in der Mitte
node main.jsÖffnen Sie den Browser, besuchen Sie http: //localhost:3000/login, und erhalten Sie die Meldung „Login erfolgreich“, greifen Sie auf http://localhost:3000/home zu und erhalten Sie die Meldung „Welcome Qiming“, die angibt, dass die SESSION erfolgreich abgeschlossen wurde. 5. ZusammenfassungIn diesem Artikel haben wir etwas über das Konzept von SESSION, die Verwendung von SESSION in Node.js, spezifische API-Informationen und ein Demonstrationsbeispiel erfahren. Wir hoffen, dass wir allen helfen können, besser zu verstehen, wie man es in Node erhält. js SESSION-Informationen anfordern. In tatsächlichen Projekten muss die Verwendung von SESSION entsprechend der tatsächlichen Situation entschieden werden und kann entsprechend den Geschäftsanforderungen implementiert werden.
Das obige ist der detaillierte Inhalt vonnodejs erhält eine Anforderungssitzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!