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

Verwendung von MySQL DDL-Anweisungen

Vorwort Die Sprachklassifikation von SQL umfasst ...

CentOS7-Konfiguration Alibaba Cloud Yum-Quellmethodencode

Öffnen Sie den Centos Yum-Ordner Geben Sie den Be...

Zusammenfassung aller HTML-Interviewfragen

1. Die Rolle des Doctypes, der Unterschied zwisch...

Die beste Lösung zum Zurücksetzen des Root-Passworts von MySQL 8.0.23

Diese Methode wurde am 7. Februar 2021 bearbeitet...

Vue imitiert den Formularbeispielcode von ElementUI

Implementierungsanforderungen Das ElementUI imiti...

Beispielcode für die Verwendung von @media in CSS3 zur Anpassung einer Webseite

Heutzutage wird die Bildschirmauflösung von Compu...

So löschen Sie den Timer elegant in Vue

Inhaltsverzeichnis Vorwort Optimierung Ableitungs...

js und jquery, um einen Tab-Statusleisten-Umschalteffekt zu erzielen

Heute werden wir einen einfachen Fall durchgehen ...

Bootstrap 3.0-Lernunterlagen für Anfänger

Als ersten Artikel dieser Studiennotiz beginnen w...

Ein praktischer Bericht über XSS-Angriffe in einem VUE-Projekt

Inhaltsverzeichnis Vorwort Entdecken Sie die Ursa...