Web & Söhne is Austria's leading expert in programming and implementing complex and large web projects.
Port from Nest's File Upload for Fastify Adapter!
- IMPORTANT: when initializing Fastify Adapter you have to register fastify-multer as well.
Steps:
Install to your project:
npm i @webundsoehne/nest-fastify-file-upload
Add contentParser
to your root application on creation:
import { NestFactory } from '@nestjs/core'
import { FastifyAdapter, NestFastifyApplication } from '@nestjs/platform-fastify'
import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger'
import { contentParser } from 'fastify-multer'
import { AppModule } from './app.module'
async function bootstrap (): Promise<void> {
const app = await NestFactory.create<NestFastifyApplication>(AppModule, new FastifyAdapter())
await app.register(contentParser)
await app.listen(3000)
}
bootstrap()
Use it like the official NestJS package for Express in your controllers:
@Post('upload')
@UseInterceptors(FileInterceptor('file'))
@ApiFileBody('file')
@ApiConsumes('multipart/form-data')
uploadFile (@UploadedFile('file') file: MulterFile): void {
console.log(file)
}
...
The package will export the missing Express.Multer.*
types as Multer*
.
Stay in touch