๊ฐœ๋ฐœ ๊ณต๋ถ€/์›น ์ง€์‹ ์ฐฝ๊ณ  3

Node.js ๊ตฌ์กฐ์™€ ๋™์ž‘์›๋ฆฌ

Node.jsNode.js® is a free, open-source, cross-platform JavaScript runtime environment that lets developers create servers, web apps, command line tools and scripts. Node.js๋Š” ๋ฌด๋ฃŒ ์˜คํ”ˆ์†Œ์Šค ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์ด๋ฉฐ, ๊ฐœ๋ฐœ์ž๋“ค์ด ์„œ๋ฒ„, ์›น์•ฑ, ๋ช…๋ น์ค„ ๋„๊ตฌ, ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๊ธฐ์กด์— ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ํด๋ผ์ด์–ธํŠธ ์ธก์˜ ๋™์ ์ธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ์—๋งŒ ์‚ฌ์šฉ๋˜์—ˆ์œผ๋ฉฐ, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๋น„๋™๊ธฐ ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์ด ์„œ๋ฒ„ ์ธก์—์„œ๋„ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋ผ ํŒ๋‹จ๋˜์–ด ๋ธŒ๋ผ์šฐ์ € ๋ฐ–์—์„œ๋„ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ ๊ฐ€๋Šฅํ•˜๋„๋ก Node.js๋ž€ ๋Ÿฐํƒ€์ž„์ด ์ƒ..

GraphQL vs Rest API

GraphQLํŽ˜์ด์Šค๋ถ์ด ๋งŒ๋“  ์ฟผ๋ฆฌ ์–ธ์–ด,REST API์˜ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœ์˜ค๋ฒ„ํŒจ์นญ, ์–ธ๋”ํŒจ์นญ๋ฐฑ์—”๋“œ API๊ฐ€ ์ˆ˜์ •๋  ๋•Œ๋งˆ๋‹ค API ๋ช…์„ธ์„œ ์ˆ˜์ • ๊ณผ์ •๊ณผ ํ”„๋ก ํŠธ์—”๋“œ ์ฝ”๋“œ๊ฐ€ ์ˆ˜์ •๋  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ REST API vs GraphQL  REST APIGraphQLํ˜ธ์ถœ์—ฌ๋Ÿฌ ์—”๋“œํฌ์ธํŠธ ํ˜ธ์ถœ (/users, /articles)๋‹จ์ผ ์—”๋“œํฌ์ธํŠธ (/graphql)๋ฐ์ดํ„ฐ ์š”์ฒญํ•ญ์ƒ ๋™์ผํ•œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ (์˜ค๋ฒ„ํŒจ์นญ)ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์š”์ฒญ ๊ฐ€๋Šฅ๋ฐ์ดํ„ฐ ์กฐ์ž‘CRUD (GET, POST, DELETE, UPDATE)query(์กฐํšŒ), mutation(์ˆ˜์ •)์—๋Ÿฌ ์ฒ˜๋ฆฌHTTP ์ƒํƒœ ์ฝ”๋“œ๋กœ ์—๋Ÿฌ ๊ตฌ๋ถ„errors ํ•„๋“œ๋ฅผ ํ†ตํ•ด ์—๋Ÿฌ ์ •๋ณด ์ œ๊ณต  ๋ฐ์ดํ„ฐ ์š”์ฒญ/์กฐ์ž‘REST API: HTTP ๋ฉ”์„œ๋“œ(GET, POST, ..

JWT (JSON Web Token) ๊ฐœ๋…

JWT (JSON Web Token)JSON ํ˜•์‹์œผ๋กœ ์ธ์ฝ”๋”ฉ๋œ ํ† ํฐ์„ ์‚ฌ์šฉํ•ด ์‚ฌ์šฉ์ž ์ธ์ฆ ๋ฐ ์ •๋ณด ์ „๋‹ฌ์— ์‚ฌ์šฉํ•˜๋Š” ํ† ํฐ ๊ธฐ๋ฐ˜ ์ธ์ฆ ๋ฐฉ์‹  ์ธ๊ฐ€ (Authorization)์–ด๋–ค ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ ˆ์ฐจ์‚ฌ์šฉ์ž๊ฐ€ ๋กœ๊ทธ์ธํ•˜๋Š” ๊ฒƒ์€ ์ธ์ฆ(Authentication)์ด๊ณ , ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž๊ฐ€ ์–ด๋–ค ๊ถŒํ•œ์„ ๊ฐ€์กŒ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์ด ์ธ๊ฐ€(Authorization)์–ด๋–ค ์„œ๋น„์Šค์—์„œ ๊ฒŒ์‹œ๊ธ€์„ ๋“ฑ๋กํ•œ๋‹ค๋˜์ง€, ๋Œ“๊ธ€์„ ๋‚จ๊ธฐ๋˜์ง€ ๋“ฑ์˜ ๊ธฐ๋Šฅ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถŒํ•œ์— ๋Œ€ํ•ด ๋งค๋ฒˆ ํ™•์ธํ•ด์•ผ ํ•จ ⇒ ๋กœ๊ทธ์ธ ์œ ์ง€๋กœ๊ทธ์ธ ์œ ์ง€ ๋ฐฉ์‹์„ธ์…˜ (Session)ํ† ํฐ  Session๊ณผ JWT ๋น„๊ตSession์„ธ์…˜ ID๋ฅผ ํด๋ผ์ด์–ธํŠธ์— ์ „๋‹ฌํ•˜๊ณ  ์ดํ›„ ํด๋ผ์ด์–ธํŠธ๋Š” ์š”์ฒญ๋งˆ๋‹ค ์„ธ์…˜ ID๋ฅผ ๋ณด๋‚ธ๋‹ค. ์„œ๋ฒ„๋Š” ์ €์žฅ๋œ ์„ธ์…˜ ์ •๋ณด๋ฅผ ํ†ตํ•ด..