Metainformationen zur Seite
  •  

Dies ist eine alte Version des Dokuments!


Node.JS

node.js lässt sich unter Ubuntu folgendermaßen installieren:

Instalation

Zunächst einmal sollte man vor der Installation via apt-get (mit Root-Rechten natürlich) das System updaten:

apt-get update
apt-get install g++ curl libssl-dev

Als nächstes gibt es die Möglichkeit via git die Pakete zu Downloaden:

apt-get install git-core
 cd /usr/src
 git clone https://github.com/joyent/node.git
 cd node
git checkout v0.10.32

Alternativ lässt sich das ganze auch via tar downloaden:

wget http://nodejs.org/dist/node-latest.tar.gz
 tar -xzvf node-latest.tar.gz
 cd node-v0.10.32

Bei zukünftigen Downloades kann die Versionsnummer natürlich abweichen. <br> Kompilieren lässt sich das ganze folgendermaßen:

./configure
 make
 make install

Verwendung der Node- bzw. npm- Konsole

Öffnen lässt sich die Nodekonsole mittels:

/usr/local/bin/node

Für npm analog dazu:

/usr/local/bin/npm

Eine Hello-World-Seite lässt sich folgendermaßen auf den Localhost bringen:

var http = require('http');
// Lädt einen Httpserver


var server = http.createServer(function (request, response) {
  response.writeHead(200, {"Content-Type": "text/plain"});
  response.end("Hello World\n");
});
// Konfiguriert den Httpserver und sendet den Text 'Hello World' an den Server


server.listen(8000);
// Überträgt den Inhalt an den Port 8000 des localhosts (127.0.0.1)


console.log("Server running at http://127.0.0.1:8000/");
// Gibt einen Text nach Ausführung in der Konsole aus.

Einbinden von HTML-Dateien

Node.js bringt von sich aus das Template Jade mit, welches Html-Dateien erzeugen soll, jedoch eine etwas andere, weil verkürzte, Syntax hat als „normales“ HTML. Hier ein Beispielcode:

!!! 5
html
  head
    title my jade template
  body
    h1 Hello #{name}
    ul#books
        li
            a(href="#book-a") Book A
        li
            a(href="#book-b") Book B
  
    p
        | foo bar
        | hello world

    foo = "hello world"
    h1= foo
    
    //comment
    select
        each book, i in books
            option(value=i) Book #{book}

{"name": "Bob"}
{"books": ["A", "B", "C"]}

Dabei wird klar, dass sich in Jade beispielsweise Variablen, Schleifen einfügen lassen, ohne eine zusätzliche Sprache benutzen zu müssen, im Gegensatz zu Html und, dass der Code insgesamt etwas kürzer ist (Im Beispiel bedingt durch Arrays und Schleifen und der generellen Syntax, da kein </head> bzw. kein </body> benötigt wird). Wer jedoch bereits eine Html-Datei hat und diese nicht extra umschreiben möchte, oder einfach keine Zeit hat eine neue Syntax zu lernen, der kann seine Html-Datei problemlos in Node.js einbinden: