npm i swagger-ui-express
npm i swagger-autogen
// npm으로 설치해준 것들 불러오기
const swaggerUi = require("swagger-ui-express");
const swaggerFile = require("./swagger-output");
app.use("/swagger", swaggerUi.serve, swaggerUi.setup(swaggerFile));
const swaggerAutogen = require("swagger-autogen")();
const doc = {
info: {
title: "NodeJS_blog API",
description: "hanghae4W API",
},
host: "localhost:3000",
schemes: ["http"],
};
const outputFile = "./swagger-output.json";
const endpointsFiles = ["./app.js"];
swaggerAutogen(outputFile, endpointsFiles, doc);
node ./swagger.js
이러면 swagger-output.json 파일이 생성된다. 이후 지정한 경로 (localhost:3000/swagger)로 접속하면 swagger ui가 적용된 api명세서가 나온다. 물론 json파일에서 자잘한것들은 수정해야 하지만 거의 자동으로 완성이 되기 때문에 매우 만족!
먼저 임의로 토큰을 하나 발급받은 후 위에 표시된 Authorize를 클릭해 발급받은 토큰을 Type과 Value 모두 넣어주면 됨. (새로고침하면 다시넣어야함.. 더 좋은 방법있는지 찾아봐야할 듯)