Erstellen Sie einen HTTP-Webserver in Node.js: Schließen Sie das Lernprogramm ab

Inhaltsverzeichnis:

Anonim

Das Node.js-Framework wird hauptsächlich zum Erstellen serverbasierter Anwendungen verwendet. Das Framework kann einfach zum Erstellen von Webservern verwendet werden, die den Benutzern Inhalte bereitstellen können.

Es gibt eine Vielzahl von Modulen, z. B. das Modul "http" und "request", mit denen serverbezogene Anforderungen im Webserverbereich verarbeitet werden können. Wir werden uns ansehen, wie wir mit Node js eine grundlegende Webserver-Anwendung erstellen können.

Knoten als Webserver über HTTP

Schauen wir uns ein Beispiel an, wie Sie unsere erste Node js-Anwendung erstellen und ausführen.

Unsere Anwendung wird ein einfaches Servermodul erstellen, das Port Nr. 7000 überwacht. Wenn über den Browser an diesem Port Nr. Eine Anfrage gestellt wird, sendet die Serveranwendung eine Antwort "Hallo Welt" an den Client.

Code Erläuterung:

  1. Die Grundfunktionalität der Funktion require besteht darin, dass sie eine JavaScript-Datei liest, die Datei ausführt und dann das Exportobjekt zurückgibt. Da wir in unserem Fall die Funktionalität des http-Moduls verwenden möchten, verwenden wir die require-Funktion, um die gewünschten Funktionen vom http-Modul abzurufen, damit es in unserer Anwendung verwendet werden kann.
  2. In dieser Codezeile erstellen wir eine Serveranwendung, die auf einer einfachen Funktion basiert. Diese Funktion wird immer dann aufgerufen, wenn eine Anfrage an unsere Serveranwendung gestellt wird.
  3. Wenn eine Anfrage eingeht, wird eine Antwort mit dem Headertyp "200" gesendet. Diese Nummer ist die normale Antwort, die in einem http-Header gesendet wird, wenn eine erfolgreiche Antwort an den Client gesendet wird.
  4. In der Antwort selbst senden wir den String 'Hello World'.
  5. Wir verwenden dann die Funktion server.listen, um unsere Serveranwendung dazu zu bringen, Clientanforderungen an Port Nr. 7000 abzuhören. Hier können Sie jeden verfügbaren Port angeben.

Wenn der Befehl erfolgreich ausgeführt wird, wird die folgende Ausgabe angezeigt, wenn Sie Ihren Code im Browser ausführen.

Ausgabe:

Aus der Ausgabe,

  • Sie können deutlich sehen, dass auf der Seite die Zeichenfolge 'Hello World' angezeigt wird, wenn wir zur URL von localhost auf Port 7000 navigieren.
  • Da wir in unserem Code speziell erwähnt haben, dass der Server Port Nr. 7000 abhört, können wir die Ausgabe anzeigen, wenn wir zu dieser URL navigieren.

Hier ist der Code als Referenz

var http=require('http')var server=http.createServer((function(request,response){response.writeHead(200,{"Content-Type" : "text/plain"});response.end("Hello World\n");}));server.listen(7000);

Bearbeitung von GET-Anfragen in Node.js.

Das Erstellen einer GET-Anforderung zum Abrufen der Daten von einer anderen Site ist in Node.js relativ einfach. Um eine Get-Anfrage im Knoten zu stellen, muss zuerst das Anforderungsmodul installiert sein. Dies kann durch Ausführen der folgenden Zeile in der Befehlszeile erfolgen

npm Installationsanforderung

Der obige Befehl fordert den Node Package Manager auf, die erforderlichen Anforderungsmodule herunterzuladen und entsprechend zu installieren.

Wenn Ihr npm-Modul erfolgreich installiert wurde, werden in der Befehlszeile der Name und die Version des installierten Moduls angezeigt: @ .

Im obigen Schnappschuss sehen Sie, dass das Anforderungsmodul zusammen mit der Versionsnummer 2.67.0 heruntergeladen und installiert wurde.

Nun sehen wir uns den Code an, der diesen 'request'-Befehl verwenden kann.

Code Erläuterung:

  1. Wir verwenden das 'Request'-Modul, das im letzten Schritt installiert wurde. Dieses Modul verfügt über die erforderlichen Funktionen, mit denen GET-Anforderungen an Websites gestellt werden können.
  2. Wir stellen eine GET-Anfrage an www.google.com und rufen anschließend eine Funktion auf, wenn eine Antwort eingeht. Wenn eine Antwort empfangen wird, haben die Parameter (Fehler, Antwort und Text) die folgenden Werte
    1. Fehler - Falls bei Verwendung der GET-Anforderung ein Fehler auftritt, wird dieser hier aufgezeichnet.
    2. Antwort - Die Antwort enthält die http-Header, die in der Antwort zurückgesendet werden.
    3. Body - Der Body enthält den gesamten Inhalt der von Google gesendeten Antwort.
  3. In diesem Fall schreiben wir nur den im body-Parameter empfangenen Inhalt in die Datei console.log. Grundsätzlich wird alles, was wir unter www.google.com erhalten , in das console.log geschrieben.

Hier ist der Code als Referenz

var request = require("request");request("http://www.google.com",function(error,response,body){console.log(body);});

Zusammenfassung

  • Das Node.js-Framework kann zum Entwickeln von Webservern mithilfe des http-Moduls verwendet werden. Die Anwendung kann dazu gebracht werden, einen bestimmten Port abzuhören und eine Antwort an den Client zu senden, wenn eine Anfrage an die Anwendung gestellt wird.
  • Das Anforderungsmodul kann verwendet werden, um Informationen von Websites abzurufen. Die Informationen würden den gesamten Inhalt der von der entsprechenden Website angeforderten Webseite enthalten.