Eine kurze Diskussion über die Typen von node.js-Middleware

Eine kurze Diskussion über die Typen von node.js-Middleware

Überblick

Node-Middleware ist die Funktion der Kapselung von HTTP-Anfragen im Programm. Node-Middleware wird in der Pipeline ausgeführt. Middleware sitzt auf dem Client/Server-Betriebssystem und verwaltet Computerressourcen und Netzwerkkommunikation.

Middleware dient dem logischen Hauptgeschäft und kann in folgende Kategorien unterteilt werden: Middleware auf Anwendungsebene, Middleware auf Routingebene, integrierte Middleware, Middleware von Drittanbietern und Middleware auf Fehlerebene.

1. Middleware auf Anwendungsebene

Jede Middleware ruft eine Funktion auf und muss mit anderer Middleware oder Routing verwendet werden.

Server (Funktion) fängt alle Routen ab

server.use('/reg', Funktion); bestimmte Routen abfangen

const express = erfordern('express');
var server = express();
server.listen(3000);
//Middleware-Abfangregistrierung route/reg
server.use('/reg',(req,res,next)=>{
    console.log('Registrierungsüberprüfung');
    nächste();
});

server.use('/login',(req,res)=>{
    console.log('Protokoll aufgezeichnet');
})
server.get('/reg',(req,res,next)=>{
    res.send('Registrierung erfolgreich');
    nächste();
});

server.get('/login',(req,res)=>{
    res.send('Anmeldung erfolgreich');
})

2. Integrierte Middleware

server.use(express.static('Verwendung'))

Hosten Sie statische Ressourcendateien in einem bestimmten Verzeichnis. Wenn der Browser statische Ressourcen anfordert, sucht er automatisch in diesem Verzeichnis.

3. Middleware von Drittanbietern

(1) Body-Parser, analysiert Post-Request-Daten in Objekte

const express = erfordern('express');
//Body-Parser-Middleware einführen const bodyParser=require('body-parser');

var server = express();
server.listen(3000);
// Hosten Sie statische Ressourcen öffentlich
server.use(express.static('./public'));

//Verwenden Sie die Body-Parser-Middleware, um die Post-Request-Daten in ein Objekt zu analysieren. //Erweitert: Gibt an, ob das erweiterte qs-Modul zum Parsen in ein Objekt verwendet werden soll. //Wenn „false“, verwenden Sie es nicht und verwenden Sie stattdessen das Querystring-Modul. server.use(bodyParser.urlencoded(
    {erweitert:false}
))

server.post('/mylogin',(req,res)=>{
    Konsole.log(Anforderung.Body);
    res.send('Anmeldung erfolgreich');
})

(2) MySQL-Modul

Normale Verbindung

//Das MySQL-Modul einführen const mysql =require('mysql');
//1. Normale Verbindung //1.1 Verbindung herstellen var connection = mysql.createConnection({
    Host: '127.0.0.1',
    Port:'3306',
    Benutzer:'root',
    Passwort:'1234',
    Datenbank:'tedu'
});
//1.2 Verbindung ausführen connection.connect();
//SQL-Anweisung ausführen connection.query('select * from emp',(err,result)=>{
    wenn(err) throw err;
    console.log(Ergebnis);
});
//Verbindung schließenconnection.end();

Verbindungspool

const mysql = erfordern('mysql');
//Verbindungspool verwenden //Verbindungspoolobjekt erstellen var pool = mysql.createPool(
    {
        Host: '127.0.0.1',
        Port:'3306',
        Benutzer:'root',
        Passwort:'1234',
        Datenbank:'tedu',
        Verbindungslimit: 20
    }
);
//SQL-Anweisung ausführen pool.query('select * from emp where eid=2',(err,result)=>{
    wenn(err) throw err;
    console.log(Ergebnis);
})
const mysql = erfordern('mysql');
var pool = mysql.createPool({
    'Host':'127.0.0.1',
    Port:'3306',
    Benutzer:'root',
    Passwort:'1234',
    Datenbank:'tedu',
    Verbindungslimit: 20
})
//Verwenden Sie Platzhalter, um Daten einzufügen // pool.query("insert into emp values(?,?,?,?,?,?)",[null,'yt','1','1995-12-24','9000','20'],(err,result)=>{
// wenn(err) throw err;
// console.log(Ergebnis);
// });
//Objekt zum Einfügen von Daten verwenden//var emp={
// eid:null,
// ename:'html',
// Geschlecht:1,
// Geburtstag:'1995-12-25',
//Gehalt:10000,
//Abteilungs-ID:30
// }
// pool.query('in emp-Set einfügen?',[emp],(err,Ergebnis)=>{
// wenn(err) throw err;
// console.log(Ergebnis);
// })
//Verwenden Sie den Platzhalter, um die Daten mit der Nummer 10 zu löschen pool.query('delete from emp where eid=?',[10],(err,result)=>{
    wenn(err) throw err;
    console.log(Ergebnis);
    wenn(Ergebnis.betroffeneZeilen>0){
        console.log('Erfolgreich gelöscht');
    }
    anders{
        console.log('Löschen fehlgeschlagen');
    }
})

Oben finden Sie eine kurze Erläuterung der detaillierten Typen von node.js-Middleware. Weitere Informationen zu node.js-Middleware finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So implementieren Sie Mock-Plugin-Middleware in Node
  • Eine kurze Diskussion über den Node.js-Middlewaremodus
  • Detaillierte Erläuterung der Routing-, Middleware-, GE-Anforderungs- und Post-Anforderungsparameter in node.js
  • Detaillierte Erklärung zur Verwendung der node.js-Middleware Express-Session
  • Tiefgreifendes Verständnis der Express-Middleware in nodejs
  • Nodejs-Entwicklung – Express-Routing und Middleware
  • NodeJS-Lernhinweise: Beispiel einer Connect-Middleware-Anwendung
  • NodeJS-Lernhinweise: Middleware-Modul verbinden (I)
  • Nodejs implementiert Blacklist-Middleware-Design

<<:  MySQL 5.7.21 Installations- und Konfigurations-Tutorial

>>:  Detaillierte Erläuterung des Nginx-HTTP-Ressourcenanforderungslimits (drei Methoden)

Artikel empfehlen

Ein kurzer Vortrag über die Variablenförderung in JavaScript

Inhaltsverzeichnis Vorwort 1. Welche Variablen we...

Zusammenfassung ungewöhnlicher Operatoren und Operatoren in js

Zusammenfassung gängiger Operatoren und Operatore...

Grundlegende Kenntnisse zur MySQL-Wurmreplikation

Würmer replizieren sich, wie der Name schon sagt,...

Detaillierte Erklärung des Prinzips und der Funktion des JavaScript-Closures

Inhaltsverzeichnis Einführung Verwendung von Vers...

Docker View JVM-Speichernutzung

1. Rufen Sie den Hostcomputer des Docker-Containe...

Nachteile und sinnvolle Verwendung des MySQL-Datenbankindex

Inhaltsverzeichnis Richtige Verwendung von Indize...

CSS Lieferadresse Parallelogramm Linienstil Beispielcode

Der Code sieht folgendermaßen aus: // Linienstil ...

So verwenden Sie Dockerfile zum Erstellen von Images in Docker

Erstellen des Images Früher haben wir verschieden...

Lösung für die leere Seite nach einem vue.js-gepackten Projekt

Ich glaube, dass viele Partner, die gerade erst m...

MySql-Gruppierung und zufälliges Abrufen eines Datenelements aus jeder Gruppe

Idee: Einfach erst zufällig sortieren und dann gr...