express, http modul oder doch was anderes?

  • express, http modul oder doch was anderes?

    Hi.

    Was würdet ihr nehmen, um eine Node.js App zu erstellen, die ein paar einfache dynamische HTML Seiten erzeugen soll?

    Ich brauch kein CMS oder MVC Framework und auch keine Template Engine.
    Sondern es sollen einfach nur einfache HTML Seiten erzeugt werden.
    Jede HTML Seite wird von einem eigenen Funktionsblock erzeugt.

    Ich hab mir Express angesehen, aber ich werde von dem Framework regelrecht erschlagen. Allein schon die Sache mit den Routendefinitionen ist recht umfangreich.
    Das ganze wirkt mir wie mit Kanonen auf Spatzen schießen.

    Wenn ich das eingebaute http Modul von Node.js nehme, reichen mir eine Handvoll simple if oder switch-case Statements um dann zum betreffenden Funktionsblock zu springen, der dann das jeweilige HTML generiert und über den HTTP Server ausliefert.

    Oder gibts ein ganz kleines, einfaches Webframework ohne den ganzen CMS / MVC / Template Engine Kram, mit dem man ungefähr auf dem Niveau arbeiten kann, wie mit "Nacktem" PHP?
    Sprich, einfach nur Anfragen entgegen nehmen, URL und URL Parameter verarbeiten, Cookies und Sessions auswerten, diese Informationen zur Verfügung stellen aber mehr nicht.
    Dann an mein Script übergeben, und die davon generierte Antwort zurück an den Client schicken.

    LG
  • Tobo schrieb:

    Ich brauch kein CMS oder MVC Framework und auch keine Template Engine.
    Sondern es sollen einfach nur einfache HTML Seiten erzeugt werden.
    Jede HTML Seite wird von einem eigenen Funktionsblock erzeugt.
    Aber ist das nicht genau das, was eine Template Engine macht? PHP ist doch zum größten Teil auch nur eine Template Enigne.


    Du brauchst ja kein Webframework (mein Favorit ist spirit). Wenn du mit dem http-Modul besser klar kommst, kannst du es gerne direkt einsetzen. Aber eine Template Engine für dynamischen Content zu verwenden, klingt für mich richtig. Hier mal eine Auswahl (mein Favorit ist Pug).


    Die alternative dürfte wohl nur noch der Template String sein:

    JavaScript-Quellcode

    1. const title = 'Test'
    2. const body = '<h1>Hello World!</h1>'
    3. response.write(
    4. `<!DOCTYPE html>
    5. <html lang="de">
    6. <head>
    7. <meta charset="UTF-8">
    8. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    9. <meta http-equiv="X-UA-Compatible" content="ie=edge">
    10. <title>${title}</title>
    11. </head>
    12. <body>
    13. ${body}
    14. </body>
    15. </html>`
    16. )
    Alles anzeigen
  • Danke.
    Ja, genau auf diese Template Strings habe ich auch abgezielt.
    Ich suche eben was "Einfaches", was ich auch als Einsteiger noch gut nachvollziehen und verstehen kann, ohne dass mir nach 5 Minuten der Kopf qualmt.

    Von Express.js fühle ich mich als Neuling gerade zu erschlagen.
    Wenn ich Autofahren lernen will, nehme ich auch erst mal einen Kleinwagen und nicht gleich nen 40-Tonner.

    Danke für die Liste, ich werde das mal durchgehen, um etwas schlankes und einfaches zu finden, was es mir ermöglicht, ohne viel Schnickschnack ein dynamisch erzeugtes HTML Dokument unter einer bestimmten URL auszuliefern.

    LG