Node.js

  • entwickelt von Ryan Dahl
    Ryan Dahl hat mittlerweile eine neue Laufzeitumgebung entwickelt, namens Deno, welche Designfehler von Node.js beheben soll.
  • Laufzeitumgebung -> JavaScript außerhalb der Browser Software ausführen
  • basierend auf Browser Engine (Chromes V8 JavaScript-Engine)
  • "speziell für die Entwicklung von skalierbaren Netzwerkanwendungen entworfen"
  • geeignet für: Chats, Streaming, Zugriff auf Objekt-Daten, keine aufwendigen Berechnungen
  • schlank; erweiterbar durch Module (enthält bereits einige Standardmodule)

NPM

  • Node Package Manager
  • Repository (= Verzeichnis) für Node Module, also Sammlung/Verwaltung von Code Paketen, die von Programmieren zur Verfügung gestellte wurden (public packages sind Open-Source)
  • erlaubt es Module herunter zu laden, um sie im eigenen Projekt zu nutzen

Node.js einrichten + Hello World

  • Node.js + npm installieren (bzw. ggf. bereits installiert mit VS Code)
    • node -v in Kommandozeile eingeben (gibt Node Version aus)
    • npm -v in Kommandozeile eingeben (gibt npm Version aus)
Codeconst http = require('http');

const hostname = '127.0.0.1'; // localhost
const port = 3000;

const server = http.createServer((request, response) => {
  response.statusCode = 200;
  response.setHeader('Content-Type', 'text/plain');
  /*response.setHeader('Access-Control-Allow-Origin', '*'); // on CORS error */
  response.end('Hello World');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});
  • JS Script mit node ausführen

    • node SkriptName.js
  • im Browser aufrufen (z. B. http://localhost:3000 bzw. http://127.0.0.1:3000), oder über fetch Request (fetch("http://localhost:3000"))

  • mit CTRL+C bzw. control-C beenden