Servir du contenu statique
Pour servir un contenu statique comme une Application à Page Unique (SPA), nous pouvons utiliser le ServeStaticModule
du package @nestjs/serve-static
.
Installation
Tout d’abord, nous devons installer le package requis :
$ npm install --save @nestjs/serve-static
Bootstrap
Une fois le processus d’installation terminé, nous pouvons importer le ServeStaticModule
dans le module racine AppModule
et le configurer en passant un objet de configuration à la méthode forRoot()
.
import { Module } from '@nestjs/common';import { AppController } from './app.controller';import { AppService } from './app.service';import { ServeStaticModule } from '@nestjs/serve-static';import { join } from 'path';
@Module({ imports: [ ServeStaticModule.forRoot({ rootPath: join(__dirname, '..', 'client'), }), ], controllers: [AppController], providers: [AppService],})export class AppModule {}
Avec cela en place, construisez le site Web statique et placez son contenu à l’emplacement spécifié par la propriété rootPath
.
Configuration
Le ServeStaticModule
peut être configuré avec une variété d’options pour personnaliser son comportement. Vous pouvez définir le chemin pour rendre votre application statique, spécifier des chemins exclus, activer ou désactiver l’en-tête de réponse Cache-Control, etc. Consultez la liste complète des options ici.
Exemple
Un exemple fonctionnel est disponible ici.