๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กSWAGGER (2)

JUINTINATION

Swagger๋ฅผ ํ™œ์šฉํ•œ API Specification

Open API Document ๋ช…์„ธ ์ œ์•ˆ์Šคํ”„๋ง๋ถ€ํŠธ๋ฅผ ํ™œ์šฉํ•œ todo-api-server์˜ ๋‚ด์šฉ์„ ๊นƒํ—ˆ๋ธŒ์— ์˜ฌ๋ฆฌ๊ณ  ์–ผ๋งˆ ์ง€๋‚˜์ง€ ์•Š์•˜์„ ๋•Œ ๊ฐ‘์ž๊ธฐ ์•Œ๋ฆผ์ด ์™”๋‹ค. ์ค€ํ˜ธ ํ˜•์ด API ๋ช…์„ธ๋ฅผ ํ•˜๋ฉด ์ข‹๊ฒ ๋‹ค๊ณ  Issue๋ฅผ ๋‚จ๊ธด ๊ฒƒ์ด์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ์ง€๋‚œ ์ŠคํผํŠธ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•œ ์ ์ด ์žˆ๋Š” Swagger๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. (์ƒค๋ผ์›ƒ ํˆฌ ์ค€ํ˜ธํ˜•) TODO API SERVER with ์Šคํ”„๋ง๋ถ€ํŠธ์ข…๊ฐ•์„ ํ•˜๊ณ  ์ด๋Ÿฐ์ €๋Ÿฐ ๋ฐ€๋ฆฐ ์ผ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ๋ณด๋‹ˆ ์–ด๋Š์ƒˆ 7์›”.. ๋‚ ์”จ๊ฐ€ ๊ฒฌ๋”œ ์ˆ˜ ์—†์„ ๋งŒํผ ๋”์›Œ์ง€๊ณ  ์ด๋Ÿฌ๋‹ค๊ฐ€ ๋งˆ์ง€๋ง‰ ๋ฐฉํ•™์„ ์•„๋ฌด๊ฒƒ๋„ ์•ˆ ํ•˜๊ณ  ์ข…์ผ ์œ ํŠœ๋ธŒ๋งŒ ๋ณด๋ฉด์„œ ๋ณด๋‚ผ ๊ฒƒ ๊ฐ™์•„์„œ ์˜ˆ์ „์— ์ž‘์„ฑํ–ˆjuintination.tistory.comSwaggerSwagger๋ž€ Restful API๋ฅผ ๋ฌธ์„œํ™”ํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ํ…Œ์ŠคํŠธํ•˜๊ณ  ํ˜ธ์ถœํ• ..

StudyNote 2024. 7. 1. 23:49
Express.js๋ฅผ ์‚ฌ์šฉํ•œ ์ŠคํผํŠธ ํ”„๋กœ์ ํŠธ

์งง์€ ์‹œ๊ฐ„๋™์•ˆ ๋งŽ์€ ๋‚ด์šฉ์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๊ณต๋ถ€ํ•ด์•ผ ํ•˜๋Š๋ผ ํž˜๋“ค์—ˆ์ง€๋งŒ ๋„ˆ๋ฌด๋‚˜๋„ ์žฌ๋ฐŒ์—ˆ๋˜ 3์ฃผ๋™์•ˆ์˜ ์ŠคํผํŠธ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋งˆ๋ฌด๋ฆฌ๋˜์—ˆ๋‹ค. ์—ํŠธ๋ฆฌ์—์„œ ์—ฐ์ˆ˜์—ฐ๊ตฌ์›์œผ๋กœ ๊ทผ๋ฌดํ•˜๋ฉด์„œ ํ‡ด๊ทผ ์ดํ›„์— ์‹œ๊ฐ„์„ ๋‚ด์„œ ํ–ˆ๋˜ ํ”„๋กœ์ ํŠธ๋ผ ์•„์‰ฌ์šด ๋ถ€๋ถ„์ด ๋งŽ์•˜์ง€๋งŒ ๊ทธ๋ž˜๋„ ์ง€๊ธˆ๊นŒ์ง€ ์™„์„ฑํ•œ ํ”„๋กœ์ ํŠธ์˜ ๋‚ด์šฉ์„ ์ ์–ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.๋ฐฑ์—”๋“œํŒ€ ์ž์œจ ์ฃผ์ œ ์ŠคํผํŠธ ํ”„๋กœ์ ํŠธ (~02/04)์šฐ๋ฆฌ์—๊ฒŒ ์ฃผ์–ด์กŒ๋˜ ์ŠคํผํŠธ ํ”„๋กœ์ ํŠธ์˜ ์กฐ๊ฑด์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. 1. MySQL + Prisma ORM + 3๊ฐœ ํ…Œ์ด๋ธ” ์ด์ƒ(1:N, M:N, ์ตœ์†Œ ํ•˜๋‚˜) + ERD 2. ์ธ์ฆ (JWT Token + Passport.js) 3. 3 Layer Architecture (Controller + Service + Repository) 4. Joi Validation -> Middleware๋กœ..

StudyNote 2024. 2. 8. 20:14