Heim > Web-Frontend > js-Tutorial > Erste Schritte mit Connect

Erste Schritte mit Connect

Jennifer Aniston
Freigeben: 2025-02-19 08:51:10
Original
170 Leute haben es durchsucht

Erste Schritte mit Connect

Key Takeaways

  • Connect ist ein erweiterbares HTTP -Server -Framework für Node.js, mit dem Entwickler modulare und wiederverwendbare Komponenten mit Middleware -Plugins schreiben können. Diese Plugins verarbeiten und geben Anfragen weiter und verarbeiten die Anforderungen direkt.
  • Middleware -Komponenten werden mit Funktionen erstellt, die Anforderungen, Antwort und nächste Parameter akzeptieren. Der Parameter „Nächster“ repräsentiert den nächsten Handler in der Kette. Diese Komponenten werden dann im Connect -Server mit der Funktion "use () verwendet.
  • Mehrere Middleware -Komponenten können in Connect verwendet werden, wobei jede Komponente bestimmte Funktionen wie Protokollierungsanforderungsdetails oder Bereitstellung von Antworten ausführt. Die Reihenfolge der Middleware -Verwendung ist wichtig, da sie in der Sequenz ausgeführt werden, die sie dem Server hinzugefügt werden.
  • Connect ermöglicht das Hinzufügen von Authentifizierungshandlern für bestimmte Abschnitte einer Website. Dies wird durch die Verwendung der Funktion use () erreicht, die den ersten Parameter als Pfad in request.Url für den Handler aufnehmen kann. Der Authentifizierungshandler überprüft den Autorisierungsheader, dekodiert das Benutzername/Passwortpaar und überprüft es gegen eine JSON -Datei zur Autorisierung.
Wenn Sie modulare und wiederverwendbare Komponenten schreiben müssen, kann Connect die beste Lösung für Sie sein. Es befasst sich mit einem erweiterbaren HTTP -Server -Framework für node.js unter Verwendung von "Plugins", die als Middleware bezeichnet werden.

Eine Middleware -Komponente ist ein Plugin, das eine Anforderung erhält und dann eine Verarbeitung durchführt. Danach kann sie die Anforderungen behandeln und beenden oder sie beim nächsten Middleware -Plugin übergeben. Die Plugins, die die Anforderung verarbeiten und sie an den nächsten Handlern übergeben, werden filter bezeichnet, während diejenigen, die die Anforderung tatsächlich verarbeiten, als -Anbieter bezeichnet werden. In der ersten Gruppe finden wir ein Plugin oder Authentifizierungs -Plugin für Anforderungen, um nur einige Beispiele zu erwähnen. Die Anbieter wären hauptsächlich Teil der Geschäftslogik Ihrer Anwendung.

In diesem Artikel sehen Sie, wie Sie beginnen und das Connect Middleware Framework in Ihren Node.js -Anwendungen verwenden.

Einrichten von Connect

Für node.js erfolgt die Paketabhängigkeit mit NPM, mit der Sie die für Ihre Anwendung erforderlichen abhängigen Pakete angeben und erhalten. Die Paketabhängigkeiten für NPM sind in einer Datei namens Package.json definiert. Obwohl diese Datei von Hand geschrieben werden kann, würde sie besser und dringend empfohlen werden, den Befehl npm zu verwenden, um ihn zu erstellen. Um diese Aufgabe zu erreichen, führen Sie den folgenden Befehl aus:
$ npm init
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Und dann zu den Fragen, die es angezeigt wird (z. B. Packungsname und so weiter). Sobald Sie fertig sind, sollte Ihre Datei "package.json" im Stammordner mit Inhalten angezeigt werden, der dem unten ähnelt:
<span>{
</span>  <span>"name": "nodejs-connect-demo",
</span>  <span>"version": "1.0.0",
</span>  <span>"description": "Demo on how to use connect framework for Node.js",
</span>  <span>"main": "server.js",
</span>  <span>"scripts": {
</span>    <span>"test": "echo \"Error: no test specified\" && exit 1"
</span>  <span>},
</span>  <span>"repository": {
</span>    <span>"type": "git",
</span>    <span>"url": "https://github.com/abbassoftware/nodejs-connect-demo.git"
</span>  <span>},
</span>  <span>"keywords": [
</span>    <span>"connect"
</span>  <span>],
</span>  <span>"author": "Abbas",
</span>  <span>"license": "",
</span>  <span>"bugs": {
</span>    <span>"url": "https://github.com/abbassoftware/nodejs-connect-demo/issues"
</span>  <span>},
</span>  <span>"homepage": "https://github.com/abbassoftware/nodejs-connect-demo"
</span><span>}</span>
Nach dem Login kopieren
Nach dem Login kopieren

Diese Datei enthält bereits Informationen über das Projekt, wurde jedoch nicht angegeben. Um Connect als Abhängigkeit zu deklarieren, müssen Sie den Abhängigkeitswert in Ihre "package.json" -Datei hinzufügen und wie folgt aktualisieren:

<span>{
</span>  <span>...
</span>  <span>"dependencies": {
</span>        <span>"connect": "3.x"
</span>  <span>},
</span>  <span>...
</span><span>}</span>
Nach dem Login kopieren
Nach dem Login kopieren
Alternativ können Sie den Befehl ausführen:
npm install connect --save
Nach dem Login kopieren
Zu diesem Zeitpunkt können wir den folgenden NPM -Befehl ausführen, um alle Abhängigkeiten herunterzuladen (in diesem Fall nur verbinden):
$ npm install
Nach dem Login kopieren

Erstellen einer „Hello World“ -Komponente, um auf Anfragen zu antworten

Sobald die Abhängigkeiten angegeben wurden, können wir einen Middleware -Anbieter erstellen, der auf alle Anforderungen mit der Hello Connect -Antwort reagiert. Erstellen Sie dazu eine "server.js" -Datei in Ihrem Node.js -Projektverzeichnis und fügen Sie den folgenden Code hinzu:

<span>var connect = require("connect");
</span><span>var app = connect();
</span>
<span>function sayHello(req<span>, res, next</span>) {
</span>    res<span>.setHeader('Content-Type', 'text/plain');
</span>    res<span>.end('Hello Connect');
</span><span>}
</span>
app
   <span>.use(sayHello)
</span>   <span>.listen(3031);
</span>
<span>console.log("Server is listening");</span>
Nach dem Login kopieren
Im obigen Code laden wir zuerst das Verbindungsmodul mit der Funktion node.js forderung () und erstellen dann einen Server mit dem Rückgabewert der Funktion. Zweitens erstellen wir eine Middleware -Komponente, das ist nichts anderes als eine Funktion, die drei Parameter benötigt: Anfrage , Antwort und nächstes. Als nächstes repräsentiert der nächste Handler in der Kette. Die Funktion Sayhello () legt den Header und den Antworttext im Antwortobjekt fest. Danach verwenden wir diese Middleware -Komponente dank der Funktion use (). Schließlich erlauben wir dem Server, Port 3031 anzuhören. Jetzt können wir unsere Connect -App über den folgenden Befehl ausführen:
node server
Nach dem Login kopieren
Wenn wir unseren Browser auf Localhost: 3031 verweisen, sollten wir die Ausgabe wie folgt sehen können: Erste Schritte mit Connect

Die Anforderungs- und Antwortobjekte

In diesem Abschnitt werden wir uns mit den im vorherigen Abschnitt erwähnten Anforderung, Antwort und nächsten Parametern befassen. Das Anforderungsobjekt enthält die Details zur eingehenden Anfrage. Einige der wichtigsten Informationen in den Anforderungsobjekten sind:

  • Methode: Enthält den Typ der Anforderung: Get, post usw.
  • URL: Enthält die vollständige URL der Anfrage. Sie können diese URL analysieren, um die Abfrageparameter für GET -Anforderungen zu erhalten.
  • Header: Es ist die Eigenschaft, die Sie mit den Anforderungsheadern verwenden können.

Das Antwortobjekt enthält die Antwort, die zurückgesandt wird. Abhängig von Ihrer Anwendung können Sie Header und Daten hinzufügen. Einige wichtige Funktionen des Antwortobjekts sind:

  • setheader (): Diese Methode fügt der Antwort einen Header hinzu.
  • removeHeader (): Diese Methode beseitigt einen Header zur Antwort.
  • write (): Es ist nützlich, eine teilweise Antwort auf das Antwortobjekt zu schreiben.
  • end (): Es handelt sich um eine Methode, mit der das Ende der Antwort markiert wird.

Verwenden Sie mehrere Middleware -Komponenten in Connect

Im letzten Abschnitt haben wir einen Middleware -Anbieter erstellt, der mit "Hello Connect" zu allen Anfragen antwortet. Jetzt fügen wir eine weitere Filter -Middleware hinzu, die die Details der eingehenden Anfrage angemeldet hat. Dann werden wir die Anfrage an unseren Sayhello () weitergeben, der die Antwort zurückgibt. Um diese andere Aufgabe zu erreichen, aktualisieren wir unsere Datei "server.js" mit dem folgenden Code:
$ npm init
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Im obigen Code haben wir eine weitere Middleware -Komponente mit der Funktion LoggingMiddleware () hinzugefügt. Es protokolliert die URL und die Methode der Anforderung und analysiert die URL, um einen möglichen Namen zu drucken Parameter bereitgestellt. Anschließend ruft es die nächste () Funktion auf, die die Anfrage an den nächsten Handler weiterleitet. Wenn wir den Connect -Server auf den Port hören, verwenden wir zunächst LoggingMiddleware () und dann Sayhello (). Wenn wir nun den Node.js -Server starten und den folgenden Befehl ausführen:
<span>{
</span>  <span>"name": "nodejs-connect-demo",
</span>  <span>"version": "1.0.0",
</span>  <span>"description": "Demo on how to use connect framework for Node.js",
</span>  <span>"main": "server.js",
</span>  <span>"scripts": {
</span>    <span>"test": "echo \"Error: no test specified\" && exit 1"
</span>  <span>},
</span>  <span>"repository": {
</span>    <span>"type": "git",
</span>    <span>"url": "https://github.com/abbassoftware/nodejs-connect-demo.git"
</span>  <span>},
</span>  <span>"keywords": [
</span>    <span>"connect"
</span>  <span>],
</span>  <span>"author": "Abbas",
</span>  <span>"license": "",
</span>  <span>"bugs": {
</span>    <span>"url": "https://github.com/abbassoftware/nodejs-connect-demo/issues"
</span>  <span>},
</span>  <span>"homepage": "https://github.com/abbassoftware/nodejs-connect-demo"
</span><span>}</span>
Nach dem Login kopieren
Nach dem Login kopieren

Wir sehen die folgenden Nachrichten:

Erste Schritte mit Connect

Hinzufügen eines Authentifizierungs -Handlers

Als nächstes müssen Sie dem Admin -Abschnitt unserer Website eine Authentifizierung über die grundlegende Zugriffsauthentifizierung von HTTP hinzufügen. Dazu müssen wir untersuchen, wie wir einen Handler nur für den Administratorbereich unseres Servers ausführen können. Die Funktion von Connect () kann den ersten Parameter als der Pfad in request.Url für den Handler aufnehmen, um aufgerufen zu werden. Wenn wir also den Authentifizierungshandler ausschließlich für den Administratorbereich wünschen, müssen wir die Datei „Server.js“ wie folgt aktualisieren:

<span>{
</span>  <span>...
</span>  <span>"dependencies": {
</span>        <span>"connect": "3.x"
</span>  <span>},
</span>  <span>...
</span><span>}</span>
Nach dem Login kopieren
Nach dem Login kopieren

Dann müssen wir eine "authDetails.json" -Datei im selben Verzeichnis von "server.js" mit dem folgenden Inhalt erstellen:

$ npm init
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Im obigen Code laden wir eine JSON -Datei namens "AuthDetails.json" (die gerade erstellt), die ein JSON -Objekt enthält, das den Benutzernamen und das Kennwort der autorisierten Benutzer enthält. Anschließend fügen wir einen weiteren Connect -Handler namens Authenticateadmin hinzu, der nur für den Administratorbereich der Website verwendet wird. Der zuvor erwähnte Handler überprüft den Autorisierungsheader und dekodiert dann das Benutzername-/Passwortpaar und überprüft es mit dem JSON -Dateiinhalt zur Autorisierung. Falls die Anfrage nicht autorisiert ist, wird eine nicht autorisierte Antwort mit dem Antwortcode 401 an den Client gesendet. Wenn wir bei diesem Update den Abschnitt "Administrator" der Website stellen, lautet die Ausgabe Folgendes: Erste Schritte mit Connect

Schlussfolgerungen

In diesem Artikel haben wir die Merkmale eines kleinen und leistungsstarken Node.js -Moduls namens Connect vertieft. Es kann Ihnen helfen, Middleware -Komponenten zu erstellen, um die Anforderungen problemlos zu bearbeiten. Durch die Verwendung von Connect- und Middleware -Plugins werden Ihre Bemühungen reduziert und Ihre Anwendung in einem strukturierteren und verwendbareren Projekt verändert. Was ist mit dir? Hast du es jemals versucht? Beginnen wir eine Diskussion.

häufig gestellte Fragen (FAQs) zu Connect

Was ist der Hauptzweck von Connect in node.js? Es ist ein einfaches, flexibles und leistungsstarkes Tool, das eine Sammlung von Plugins auf hoher Ebene bietet, die als Middleware bekannt sind. Diese Middleware -Komponenten führen verschiedene Aufgaben wie Protokollierung, Servieren statischer Dateien und Verwaltung von Sitzungen aus. Connect fungiert im Wesentlichen als Pipeline, die HTTP -Anforderungen und Antworten verarbeitet. Es ermöglicht Entwicklern, ihrem Server zusätzliche Funktionen hinzuzufügen, indem sie verschiedene Middleware -Komponenten anschließen.

Wie unterscheidet sich die Verbindung von Express.js? .JS, Express.js ist oben auf Connect gebaut. Dies bedeutet, dass Express.js alle Funktionen von Connect sowie zusätzliche Funktionen enthält. Express.js bietet eine robustere Funktion für Web- und mobile Anwendungen, einschließlich Vorlagenmotoren, vereinfachtes Mehrfachrouting und einer Middleware -Schnittstelle.

Wie installiere ich Connect? Auf Ihrem System müssen Sie Node.js und NPM (Node Package Manager) installieren lassen. Sobald Sie diese haben, können Sie Connect installieren, indem Sie den folgenden Befehl in Ihrem Terminal ausführen: NPM Installation Connect.

Wie verwende ich Middleware in Connect? Verwendung () Methode für eine Verbindungsanwendung. Die Methode use () nimmt eine Middleware -Funktion als Argument an. Diese Middleware -Funktion wird dann zu dem Stapel von Middleware von Connect hinzugefügt und wird in der Reihenfolge ausgeführt, die hinzugefügt wurde, wenn eine Anforderung an den Server gestellt wird.

Kann ich meine eigene Middleware in Connect erstellen?

Ja, Sie können Ihre eigene Middleware in Connect erstellen. Eine Middleware ist einfach eine Funktion, die Zugriff auf das Anforderungsobjekt, das Antwortobjekt und die nächste Middleware-Funktion im Anforderungsreaktionszyklus der Anwendung hat. Diese Funktion kann Operationen für Anforderungs- und Antwortobjekte ausführen und dann die nächste Middleware -Funktion im Stapel aufrufen. Die nächste () -Funktion ist eine Funktion in der Connect Middleware, die beim Aufrufen die Steuerung an die nächste Middleware -Funktion im Stapel übergibt. Wenn eine Middleware-Funktion nicht als Next () in sie aufgerufen wird, wird der Anforderungs-Wirkungs-Zyklus gestoppt. Es wird nicht zu anderen Middleware- oder Routenhandlern fortgesetzt. Diese Middleware -Funktion enthält vier Argumente anstelle der üblichen drei: (Err, Req, Res, Weiter). Wenn Sie die nächste () -Funktion mit einem Fehlerargument aufrufen, überspringt Connect alle verbleibenden Middleware im Stapel und fordern Sie diese Fehlerbehandlung mit Middleware fort.

Ja, Connect ist so konzipiert, dass sie nahtlos mit den meisten Node.js -Web -Frameworks gearbeitet werden. Tatsächlich sind viele beliebte Frameworks wie Express.js auf Connect aufgebaut. Dies bedeutet, dass Sie die Verbindung von Middleware in diesen Frameworks verwenden können.

Wie kann ich statische Dateien mit Connect? Sie können diese Middleware -Funktion verwenden, um Dateien aus einem angegebenen Verzeichnis zu bedienen. Um beispielsweise statische Dateien aus einem Verzeichnis mit dem Namen "Public" zu dienen, verwenden Sie den folgenden Code: app.use (Connect.static ('public')). 🎜>

Zum Zeitpunkt des Schreibens wird Connect nicht aktiv gepflegt und aktualisiert. Das letzte Update wurde vor einigen Jahren durchgeführt. Es wird jedoch immer noch weit verbreitet und seine Funktionalität ist stabil. Für ein aktiver gepflegteres Middleware -Framework können Sie Express.js verwenden, das auf dem oberen Rand der Konnektion basiert und zusätzliche Funktionen enthält.

Das obige ist der detaillierte Inhalt vonErste Schritte mit Connect. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage