Vollzeitblogger

Hello World in node.js

August 27, 2013

Um ein Hello World Skript in node.js zu schreiben, gibt es mindestens zwei Wege. Einmal über den Terminal/die Konsole ausgeben und natürlich als Antwort an einen Browser oder einen anderen Netzwerkklienten. Schauen wir uns die Beiden mal an.

Das Hello World oder Hallo Welt Beispiel in node.js ist sicher schon etwas ein alter Hut, aber ich schließe es hier der Vollständigkeit halber ein und um zu zeigen, dass die Kommandozeile kein Hinderniss darstellt, sondern Potenzial.

node.js Hello World in der Kommandozeile

Zu diesem Beispiel gibt es nicht viel zu sagen, außer das wir die gleiche Funktion nutzen wie im Browser um einen String, ein Objekt oder sonst etwas in der JavaScript Konsole des Browsers auszugeben: console.log().

Wenn wir nach der Installation von node.js eine Datei mit dem folgenden Inhalt anlegen ist unser erstes Beispiel schon fertig:

<code>// Dateiname: console.js
console.log('Hello World');
</code>

Wenn wir die Datei nun mit node console.js ausführen, sollte die Ausgabe Hello World ergeben und das Programm automatisch beenden.

node.js Hello World Webserver

Nun zu dem etwas nützlicheren Beispiel, der Ausgabe für Browser oder andere HTTP requests.

Dieses Beispiel zeigt nicht nur wie man etwas über das Netzwerk ausgibt, sondern auch wie man ein Modul in node.js lädt. In der ersten Zeile definieren wir eine Variable, die den gleichen Namen wie das node.js Modul http trägt.

Danach starten wir den HTTP Server, der Anfragen mit Hello World beantworten wird, unter der Adresse localhost:3000.

Zuletzt geben wir auf der Kommandozeile aus, dass der Server auf Port 3000 gestartet wurde.

<code>// Dateiname: http.js
var http = require('http');

http.createServer(function (request, response) {
    response.end('Hello World');
}).listen(3000);

console.log('http server listening at localhost:3000');
</code>

Wie auch im ersten Beispiel starten wir das Skript mit node http.js und können darauf localhost:3000 besuchen. Im Gegensatz zum ersten Beispiel beendet sich dieses Programm nicht selbst, sondern wartet darauf bis es mit CTRL+C abgebrochen wird, weil die http.createServer Funktion eine Eventschleife startet, die immer weiter Anfragen beant

Fazit

Auch wenn Hello World Tutorials zahlreich und oft wenig anspruchsvoll sind, zeigen diese beiden Beispiel relativ gut, wie man eine event loop startet und module importiert und wie manche Dinge einfach dem Arbeiten im Browser ähnlich sind, wie console.log. Habt ihr Ideen für ein Tutorial? Tweetet einfach an @vollzeitblogger!


© 2023, by Jonathan M. Hethey