Erstellen eines HTTP-Webservers in Node.js: Tutorial mit Code Beispiel

Das Node.js-Framework wird hauptsรคchlich zum Erstellen serverbasierter Anwendungen verwendet. Das Framework kann problemlos zum Erstellen von Webservern verwendet werden, die den Benutzern Inhalte bereitstellen kรถnnen.

Es gibt eine Vielzahl von Modulen wie das โ€žhttpโ€œ- und das โ€žrequestโ€œ-Modul, die bei der Verarbeitung serverbezogener Anfragen im Webserverbereich helfen. Wir werden uns ansehen, wie wir damit eine einfache Webserveranwendung erstellen kรถnnen Knoten js.

Knoten als Webserver mit HTTP

Schauen wir uns ein Beispiel an, wie wir 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 โ€žHello Worldโ€œ-Antwort an den Client.

Knoten als Webserver รผber HTTP

Code Erlรคuterung

  1. Die Grundfunktionalitรคt der require-Funktion besteht darin, dass sie a liest JavaSkript Datei, fรผhrt die Datei aus und fรคhrt dann mit der Rรผckgabe des Exportobjekts fort. Da wir in unserem Fall die Funktionalitรคt des http-Moduls nutzen mรถchten, verwenden wir die Funktion โ€žrequireโ€œ, 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, sagen wir, dass wir eine Antwort mit dem Header-Typ โ€ž200โ€œ senden sollen. 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 die Zeichenfolge โ€žHello Worldโ€œ.
  5. Wir verwenden dann die Funktion server.listen, um unsere Serveranwendung dazu zu bringen, Clientanfragen auf Port Nr. 7000 abzuhรถren. Sie kรถnnen hier 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.

Ausgang

Knoten als Webserver รผber HTTP

Aus der Ausgabe,

  • Das kann man deutlich sehen, wenn wir zu folgendem navigieren: URL Wenn Sie localhost auf Port 7000 aufrufen, wird die Zeichenkette โ€žHello Worldโ€œ auf der Seite angezeigt.
  • Da wir in unserem Code ausdrรผcklich 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);

Umgang mit GET-Anfragen in Node.js

Eine GET-Anfrage zu stellen, um Daten von einer anderen Site abzurufen, ist in Node.js relativ einfach. Um eine Get-Anfrage im Knoten zu stellen, mรผssen wir zuerst das Anfragemodul installieren. Dies kann durch Ausfรผhren der folgenden Zeile in der Befehlszeile erfolgen

NPM-Installationsanfrage

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

Wenn Ihr npm-Modul erfolgreich installiert wurde, zeigt die Befehlszeile den Namen und die Version des installierten Moduls an: @ .

Bearbeitung von GET-Anfragen

Im obigen Schnappschuss kรถnnen Sie sehen, dass das Modul โ€žrequestโ€œ mit der Versionsnummer 2.67.0 heruntergeladen und installiert wurde.

Sehen wir uns nun den Code an, der diesen โ€žRequestโ€œ-Befehl nutzen kann.

Bearbeitung von GET-Anfragen

Code Erlรคuterung

  1. Wir verwenden das Modul โ€žrequestโ€œ, das im letzten Schritt installiert wurde. Dieses Modul verfรผgt รผber die notwendigen Funktionen, mit denen GET-Anfragen 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 empfangen wird. Wenn eine Antwort empfangen wird, haben die Parameter (Fehler, Antwort und Text) die folgenden Werte
    1. Fehler โ€“ Falls bei der Verwendung der GET-Anfrage ein Fehler auftritt, wird dieser hier aufgezeichnet.
    2. Antwort: Die Antwort enthรคlt die HTTP-Header, die in der Antwort zurรผckgesendet werden.
    3. Textkรถrper โ€“ Der Textkรถrper enthรคlt den gesamten Inhalt der vom Programm gesendeten Antwort. Google.
  3. Dabei schreiben wir lediglich den im Body-Parameter empfangenen Inhalt in die Datei console.log. Also im Grunde genommen alles, was wir erreichen, wenn wir gehen www.google.com wird in die 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

  • Mit dem Node.js-Framework kรถnnen Webserver mithilfe des Moduls โ€žhttpโ€œ entwickelt werden. Die Anwendung kann so eingestellt werden, dass sie einen bestimmten Port รผberwacht und eine Antwort an den Client sendet, wenn eine Anfrage an die Anwendung gestellt wird.
  • Mit dem Modul โ€žAnfrageโ€œ kรถnnen Informationen von Websites abgerufen werden. Die Informationen wรผrden den gesamten Inhalt der von der betreffenden Website angeforderten Webseite umfassen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: