Nest.js + OpenAPI (Swagger)를 사용해보십시오.
5793 단어 swaggerOpenAPITypeScriptNestJS
전회: Nest.js 사용하기
지난번: Nest.js에서 Sequelize를 사용해보기
이번에는 클라이언트 측에서 액세스하는 부분을 만듭니다.
Nest.js 디폴트도 좋지만, RestAPI 표준 규격(이 되면 소문)의 OpenAPI(구 Swagger)를 도입하고 싶습니다.
(2019/12/11 추가)
최신 nestjs/swagger는 OpenAPI(Swagger3.0)를 지원하므로 이 페이지의 내용은 오래되었습니다.
nestjs/swagger4계에 관한 기사도 쓰고 있으므로, 그쪽을 참조해 주세요.
nestjs/swagger 3계(Swagger2.0)⇒4계(Swagger3.0(OpenAPI))로의 버전 업
OpenAPI(Swagger)란?
OpenAPI - Swagger: htps : // 슈게 r. 이오 / 도 cs / s 페시 후 카치 온 / 아보 t /
이것을 도입하면, API 사양서를 출력해 주는 뿐만이 아니라, API의 테스트를 할 수 있거나 꽤 편리한 툴입니다!
또한 openapi-generator을 사용하면 클라이언트 측에서 액세스하기위한 API 클라이언트도 자동 생성 할 수 있으므로 (Angular 용 코드 출력도 가능) 개발 공수를 훨씬 줄일 수 있습니다
소개
Nest.js 공식 도입 방법 가 쓰여 있기 때문에 그것을 따릅니다.
@nestjs/swagger 설치
npm install --save @nestjs/swagger swagger-ui-express
main.ts에서 Swagger 설정
src/main.tsimport { NestFactory } from '@nestjs/core';
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
import { ApplicationModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(ApplicationModule);
const options = new DocumentBuilder()
.setTitle('Cats example')
.setDescription('The cats API description')
.setVersion('1.0')
.addTag('cats')
.build();
const document = SwaggerModule.createDocument(app, options);
SwaggerModule.setup('api', app, document);
await app.listen(3000);
}
bootstrap();
준비는 이것뿐입니다!
시작해보기
docker-compose up
로 시작하고 브라우저에서 /api
에 액세스합니다.
엄청 쉽습니다! ! !
JSON 형식으로 출력
/api-json
에 액세스하면 JSON 형식으로 출력할 수도 있습니다.
Reference
이 문제에 관하여(Nest.js + OpenAPI (Swagger)를 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/teracy164/items/f21f72679ba5b9ef5642
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Nest.js 공식 도입 방법 가 쓰여 있기 때문에 그것을 따릅니다.
@nestjs/swagger 설치
npm install --save @nestjs/swagger swagger-ui-express
main.ts에서 Swagger 설정
src/main.ts
import { NestFactory } from '@nestjs/core';
import { SwaggerModule, DocumentBuilder } from '@nestjs/swagger';
import { ApplicationModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(ApplicationModule);
const options = new DocumentBuilder()
.setTitle('Cats example')
.setDescription('The cats API description')
.setVersion('1.0')
.addTag('cats')
.build();
const document = SwaggerModule.createDocument(app, options);
SwaggerModule.setup('api', app, document);
await app.listen(3000);
}
bootstrap();
준비는 이것뿐입니다!
시작해보기
docker-compose up
로 시작하고 브라우저에서 /api
에 액세스합니다.
엄청 쉽습니다! ! !
JSON 형식으로 출력
/api-json
에 액세스하면 JSON 형식으로 출력할 수도 있습니다.
Reference
이 문제에 관하여(Nest.js + OpenAPI (Swagger)를 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/teracy164/items/f21f72679ba5b9ef5642
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Nest.js + OpenAPI (Swagger)를 사용해보십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/teracy164/items/f21f72679ba5b9ef5642텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)