Heim > Web-Frontend > js-Tutorial > Hauptteil

Node Express lernt und chattet über Middleware

青灯夜游
Freigeben: 2021-11-26 19:23:20
nach vorne
2354 Leute haben es durchsucht

Dieser Artikel führt Sie durch die Express-Middleware in node und stellt das Konzept und die Middleware-Klassifizierung vor. Ich hoffe, dass er Ihnen hilfreich sein wird!

Node Express lernt und chattet über Middleware

Express ist ein einfaches und flexibles Webanwendungs-Entwicklungsframework, das zum schnellen Erstellen einer voll funktionsfähigen Webanwendung verwendet werden kann. Als Service-Framework der oberen Ebene basierend auf der Node.js-Kapselung bietet Express eine einfachere API erleichtert die Anwendungsorganisation und -verwaltung durch Middleware und Routing.

Das Konzept der Middleware

Middleware besteht darin, die Anforderungsverarbeitungsfunktion in mehrere Unterverarbeitungsfunktionen zu modularisieren. Eine Reihe von Unterverarbeitungsfunktionen kann einen Middleware-Stapel bilden. Im Antwortzyklus der Anwendung können Sie auf die Funktionen „Anfrageobjekt req“, „Antwortobjekt res“ und „next()“ zugreifen. Die Funktion „next()“ ist hauptsächlich für die Übergabe der Steuerung an die nächste Middleware verantwortlich Wenn next() nicht aufgerufen wird, wird die Anfrage angehalten und die später definierte Middleware wird nicht ausgeführt. , Die Ausführungsreihenfolge von Middleware

stimmt strikt mit der Registrierungsreihenfolge von oben nach unten überein.

Middleware

Funktionen, die die folgenden Aufgaben ausführen können:

Beliebigen Code ausführen

Anforderungs- und Antwortobjekte ändern Den Anforderung-Antwort-Zyklus beenden

    Die nächste Middleware (nächste) im Stapel aufrufen
  • Der Hauptzweck von
  • Middleware
  • besteht darin, HTTP-Anfragen zu verarbeiten, um bestimmte Aufgaben wie die Überprüfung des Anmeldestatus, Anforderungsprotokolle, Fehlerbehandlung, Cookies usw. auszuführen.

Middleware-Klassifizierung

1 Middleware auf Anwendungsebene

Node Express lernt und chattet über Middleware

Verwenden Sie die Funktion app.use(), um Middleware auf Anwendungsebene an die Anwendungsobjektinstanz zu binden

const app = express();
/*表示匹配任何路由*/
app.use(function(req,res,next){
    console.log('请求时间:' +  Date.now());
    /*表示匹配完成这个中间件就继续往下执行。*/
    next()
})
Nach dem Login kopieren

2 Middleware auf Routingebene

Route -Level-Middleware funktioniert genauso wie Middleware auf Anwendungsebene, außer dass sie an die Router-Instanz gebunden ist Handhabung der Middleware-Funktion. Auch wenn die nächste Funktion nicht erforderlich ist, muss sie angegeben werden. Andernfalls wird die nächste Funktion als reguläre Middleware interpretiert und Fehler können nicht behandelt werden

import express from 'express';

const app = express();

const router = express.router();

router.use(
  '/user',
  function (req, res, next) {
    console.log(1);
    next();
  },
  function (req, res, next) {
    console.log(2);
    next();
  },
  function (rex, res, next) {
    console.log(3);
    next();
  }
);
Nach dem Login kopieren

4 Integrierte Middleware

Express verfügt über die folgende integrierte Middleware:

express.static: Stellt statische Ressourcendienste bereit express .router: Bietet Routing-Dienst

5 Middleware von Drittanbietern

Middleware von Drittanbietern wie Body-Parser, Cookie-Parser usw.

    6 Benutzerdefinierte Middleware
  • Benutzerdefinierte Middleware ist als Funktion definiert Akzeptieren Sie die Parameter req,res,next und registrieren Sie die Middleware mit app.use(). !

Das obige ist der detaillierte Inhalt vonNode Express lernt und chattet über Middleware. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:juejin.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage