// 폴더 생성
mkdir newfolder
// 폴더 안으로 이동
cd newfolder
// 패키지설정
// type module 추가
yarn init
// express와 swagger 관련 모듈 설치
yarn add express swagger-jsdoc swagger-ui-express
import express from "express";
const app = express();
const port = 3000;
// json 데이터 사용가능하게 연결
app.use(express.json());
app.get("/", (req, res) => {
res.send("Hello World!");
});
app.listen(port, () => {
console.log(`Example app listening on port ${port}`);
});
export const options = {
definition: {
openapi: '3.0.0',
info: {
title: 'API 명세서',
version: '1.0.0',
},
},
apis: ['./swagger/*.swagger.js'],
import express from "express";
import swaggerUi from "swagger-ui-express";
import swaggerJsdoc from "swagger-jsdoc";
import { options } from "./swagger/config.js";
const app = express();
const port = 3000;
// json 데이터 사용가능하게 연결
app.use(express.json());
// swagger 설정
app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerJsdoc(options)));
app.get("/", (req, res) => {
res.send("Hello World!");
});
app.listen(port, () => {
console.log(`Example app listening on port ${port}`);
});
/**
* @swagger
* /users:
* get:
* summary: 회원 전체 조회
* description: 전체 회원을 조회한다.
* tags: [User]
* responses:
* 200:
* description: 성공
* content:
* application/json:
* schema:
* type: array
* items:
* properties:
* email:
* type: string
* example: "aaa@gmail.com"
* writer:
* type: string
* example: "맹구"
* phone:
* type: string
* example: "010-0000-0000"
* personal:
* type: string
* example: "110111-1111111"
* prefer:
* type: string
* example: "https://naver.com"
*/
/**
* @swagger
* /starbucks:
* get:
* summary: 커피목록 전체 조회
* description: 모든 커피목록을 조회한다.
* tags: [Starbucks]
* responses:
* 200:
* description: 성공
* content:
* application/json:
* schema:
* type: array
* items:
* properties:
* name:
* type: string
* example: "아메리카노"
* kcal:
* type: number
* example: 5
*/