5. Nest.js 광부왕 게임 서버 Swagger 적용
2023. 3. 3. 13:21ㆍ프로젝트/게임 서버 - Nest.js
1. swagger, express-basic-auth 설치
npm install --save @nestjs/swagger
npm install --save express-basic-auth
2. main.ts swagger 적용
* product 서버에서는 관리자만 swagger 접근이 가능하도록 express-basic-auth를 사용하여 비밀번호 설정
import { ValidationPipe } from '@nestjs/common';
import { NestFactory } from '@nestjs/core';
import { SocketIoAdapter } from './adapters/adapters';
import { AppModule } from './app.module';
//추가
import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';
import expressBasicAuth from 'express-basic-auth';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
// 추가 product 서버 일 때 비밀번호 입력 후 swagger 접근 가능
if (process.env.NODE_ENV === 'product') {
app.use(
['/docs'],
expressBasicAuth({
challenge: true,
users: { [process.env.SWAGGER_USER]: process.env.SWAGGER_PWD },
}),
);
}
// swagger 설명
const config = new DocumentBuilder()
.addBearerAuth()
.setTitle('광부왕')
.setDescription('king-of-mine-worker-back Api')
.setVersion(process.env.VERSION)
.build();
// swagger setup
const document = SwaggerModule.createDocument(app, config);
SwaggerModule.setup('docs', app, document);
await app.listen(process.env.PORT);
}
bootstrap();
728x90
반응형
'프로젝트 > 게임 서버 - Nest.js' 카테고리의 다른 글
7. Nest.js 광부왕 게임 서버 Interceptor 적용 (0) | 2023.03.03 |
---|---|
6. Nest.js 광부왕 게임 서버 Filter 적용 (0) | 2023.03.03 |
4. Nest.js 광부왕 게임 서버 Redis 설정 [캐시 데이터] (0) | 2023.03.02 |
3. Nest.js 광부왕 게임 서버 로그 저장 [로그 데이터] (0) | 2023.02.19 |
2. Nest.js 광부왕 게임 서버 Mysql TypeOrm 설정 [게임 데이터] (0) | 2023.02.16 |