Node.js „Hallo Welt“ Webserver

In diesem Node.js-Tutorial für Einsteiger werde ich einen sehr einfachen Webserver programmieren, der den Text Hallo Welt ausgibt. Dazu erstellen wir eine Datei webserver.js, in der wir unseren Programm-Code schreiben.

Zuerst muss das HTTP-Modul in unser Programm geladen werden, dies geschieht mit der Funktion require():

var http = require('http');

Danach definieren wir schonmal die gewünschte Portnummer, in meinem Fall die 8080. Wir speichern sie in der Variable port.
Hinweis: Um Ports unterhalb der 1024 zu verwenden, muss das Node.js-Programm mit Root-Rechten ausgeführt werden.

var port = 8080;

Dann erstellen wir mit der Funktion createServer() des HTTP-Modules eine Callback-Funktion, welche die eingehenden Anfragen entgegennimmt. Sie übermittelt den HTTP-Statuscode 200 (OK), teilt den Browser mit dass es sich um einen Text handelt und fügt abschließend den Text Hallo Welt! ein.

var server = http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hallo Welt!');
});

Als nächtes binden wir den Server mit der Funktion listen() auf die vorher festgelegte Port-Nummer.

server.listen(port);

Und Zuletzt geben wir noch einen Hinweis in der Konsole aus, der uns die Webadresse anzeigt über die wir den Webserver erreichen können.

console.log('Der Server ist erreichbar unter http://127.0.0.1:' + port + '/');

Wenn wir nun den Code ausführen, gibt die Console folgendes aus:

Der Server ist erreichbar unter http://127.0.0.1:8080/

Abschließend besuchen wir die ausgegebene Adresse http://127.0.0.1:8080/ mit einem beliebigen Webbrowser, und bekommen den Text angezeigt:

Hallo Welt!

Der Node.js-Webserver funktioniert!

vollständiger Code #

// 'Hallo Welt' Webserver
var http = require('http');
var port = 8080;

var server = http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hallo Welt!');
});
server.listen(port);

console.log('Der Server ist erreichbar unter http://127.0.0.1:' + port + '/');
VN:F [1.9.22_1171]
Bewertung: 4.7/5 (29 Bewertungen)
Node.js "Hallo Welt" Webserver, 4.7 out of 5 based on 29 ratings
Regelmäßige Beiträge über Node.js

nodecodeAbonniere den kostenlosen NodeCode-Newsletter, und bleibe auf dem laufenden über neue Beiträge zum Thema Node.js. Darunter:

  • Informationen und Neuigkeiten rund um Node.js und zugehörigen Modulen
  • Vorstellung von interessanten Frameworks und Bibliotheken
  • Anleitungen und Tutorials zu Node.js und weiterführenden Technologien
  • Sowie vieles mehr...

schon 3 Kommentare gehe zum kommentieren

  1. Partikel /

    @Emmerich Lorenz:
    Wenn es sich um deinen Rechner daheim handelt, dann erst mal gar nicht, weil dein Router hoffentlich keine offenen Ports hat. Man kann aber per Port Forwarding einrichten, dass alle HTTP-Anfragen auf Port 8080 an deinen PC weitergegeben werden (blöde Idee, weil großes Sicherheitsrisiko wenn man nicht weiß was man tut). Dann suchst du noch die IP deines Routers heraus z.B. mit wieistmeineip.de

    Wenn es nur um dein lokales Netzwerk geht, du also z.B. per Tablet aus dem selben Netzwerk auf die Seite zugreifen willst, dann musst du die lokale IP des Servers herausfinden, z.B. in der Powershell oder in cmd mit dem Befehl „ipconfig“.

    Egal ob LAN oder Internet, wer auf deine Seite zugreifen will tippt im Browser die IP und gegebenenfalls den Port dazu, Beispiel für IP 192.168,178.3 und Port 8080:
    192.168,178.3:8080

  2. Emmerich Lorenz /

    Und wie erreicht man den Server von einem andern Host?

  3. Michael Biermann /

    For newbies you could explain where 127.0.0.1 is derived from … it’s the local host … 127 is reserved for the machine itself.

hinterlasse einen Kommentar