Veröffentlicht · wird verbessert
Framework · Seit 2017
NestJS ist ein TypeScript-Framework für strukturierte Node.js-Server mit Modulen und Dependency Injection und läuft auf Express, dem schlanken Web-Framework.
Express ist das meistgenutzte Web-Framework für Node.js. Es bietet einen kleinen Kern aus Routing und Middleware und überlässt die Struktur der Anwendung Ihnen. NestJS, erstmals 2017 veröffentlicht, ist ein Server-Framework auf Basis von TypeScript und Dekoratoren, das Module, Controller, Provider und Dependency Injection mitbringt. Nest übergibt die HTTP-Verarbeitung einem Plattformadapter, standardmäßig Express. Eine Nest-Anwendung läuft daher intern als Express-Server und kann Express-Middleware direkt verwenden.
Express eignet sich für kleine APIs, Prototypen und Projekte, deren Struktur Sie selbst entwerfen möchten. NestJS spielt seine Stärken aus, wenn Codebasis und Team wachsen: bei langlebigen REST- und GraphQL-APIs, Microservices und Echtzeit-Servern. Pipes validieren Eingaben, Guards prüfen Berechtigungen, und das Framework fügt sich nahtlos in Jest-basierte Tests und ORMs wie TypeORM und Prisma ein.
Mit installiertem Node.js genügen für Express npm install express und ein paar Zeilen Code. Für NestJS legen Sie ein Projekt mit der Nest CLI an und lesen die offizielle Dokumentation ab dem Kapitel First steps. Wer zuerst Requests, Responses und Middleware in Express versteht, erkennt leichter, was Nest darauf aufbaut.
Funktionen werden in Module aufgeteilt, Provider wie Services kommen über den Konstruktor. Das senkt die Kopplung und erleichtert das Testen.
Routen und Eingaben werden mit Dekoratoren wie @Controller, @Get und @Body deklariert, übergreifende Logik mit Pipes, Guards und Interceptors ergänzt.
Express ist die Standard-HTTP-Plattform, daher funktioniert dessen Middleware-Ökosystem unverändert. Bei Bedarf lässt sich auf Fastify wechseln.
Allein genutzt bietet Express einen kleinen Kern aus Routing und Middleware, mit dem Server in beliebiger Struktur schnell entstehen.
NestJS und Express laufen auf Node.js. Installieren Sie die LTS-Version von nodejs.org und prüfen Sie, ob node und npm ihre Versionen anzeigen.
node --version && npm --versionInstallieren Sie das offizielle Kommandozeilenwerkzeug, das Projekte anlegt und Code generiert. Nur für Express überspringen Sie diesen Schritt und führen im Projektordner npm install express aus.
npm i -g @nestjs/cliLegen Sie ein neues Projekt an und starten Sie den Entwicklungsserver im Watch-Modus. Die CLI fragt nach dem Paketmanager; danach antwortet die App unter http://localhost:3000.
nest new hello-nest && cd hello-nest && npm run start:devEin mit nest new angelegtes Projekt enthält diesen Controller. @Controller() registriert die Klasse als Controller, @Get() leitet GET-Anfragen auf den Wurzelpfad an getHello weiter. AppService wird über den Konstruktor injiziert, und src/main.ts erzeugt die Anwendung aus AppModule und lauscht auf Port 3000.
src/app.controller.ts
import { Controller, Get } from '@nestjs/common';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
@Get()
getHello(): string {
return this.appService.getHello();
}
}
npm run start:devSechs Kapitel führen dich von der Installation bis zu den Kernkonzepten von NestJS · Express.
Stelle Fragen, teile Erfahrungen und tausche Meinungen zu NestJS · Express aus.
Noch keine Diskussionen. Starte die erste.
0 Kommentare
Anmelden · Melde dich an, um einen Kommentar zu schreiben.
Schreib den ersten Kommentar.