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

๋ชฉ๋กREST API (2)

kingsubin

44์žฅ. REST API

44์žฅ. REST API REST(REpresentational State Transfer): HTTP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์˜ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ์‹์„ ๊ทœ์ •ํ•œ ์•„ํ‚คํ…์ฒ˜ REST API: REST๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์„œ๋น„์Šค API๋ฅผ ๊ตฌํ˜„ํ•œ ๊ฒƒ 44-1. REST API์˜ ๊ตฌ์„ฑ ๊ตฌ์„ฑ์š”์†Œ ๋‚ด์šฉ ํ‘œํ˜„๋ฐฉ๋ฒ• resource ์ž์› URI(์—”๋“œํฌ์ธํŠธ) verb ์ž์›์— ๋Œ€ํ•œ ํ–‰์œ„ HTTP ์š”์ฒญ ๋ฉ”์„œ๋“œ representations ์ž์›์— ๋Œ€ํ•œ ํ–‰์œ„์˜ ๊ตฌ์ฒด์  ๋‚ด์šฉ payload 44-2. REST API ์„ค๊ณ„ ์›์น™ URI๋Š” ๋ฆฌ์†Œ์Šค๋ฅผ ํ‘œํ˜„ ํ–‰์œ„์— ๋Œ€ํ•œ ์ •์˜๋Š” HTTP ์š”์ฒญ ๋ฉ”์„œ๋“œ๋กœ 44-3. JSON Server๋ฅผ ์ด์šฉํ•œ REST API ์‹ค์Šต npm json-server ์‚ฌ์šฉ ๋Œ€๋ถ€๋ถ„ ์•„๋Š” ๋‚ด์šฉ์ด๋ผ ์ฝ๊ธฐ๋งŒ ํ•˜๊ณ  ๋ฉ”๋ชจ๋Š” ์ƒ๋žตํ•จ.

REST API ์„ค๊ณ„ ๊ฐ€์ด๋“œ

Richardson Maturity Model ์ž˜ ์ •๋ฆฌ๋œ ๊ธ€ brunch.co.kr/@pubjinson/12 ๋ ˆ๋ฒจ 3์€ Hypermedia Controls ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค. ์š”์ ์€ ๋‹ค์Œ์— ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€์™€ ๊ทธ๊ฒƒ์„ ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฃจ์–ด์•ผ ํ•  ๋ฆฌ์†Œ์Šค์˜ URI ๋ฅผ ์•Œ๋ ค์ค€๋‹ค. ์žฅ์ ์€ ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ์— ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค์ง€ ์•Š๊ณ  URI schema ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ƒ์„ธ๋ณด๊ธฐ์—์„œ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋Š” ์ •๋ณด, ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ •๋ณด ๊ฐ™์€๊ฑธ ๋„ฃ์–ด์ค„ ์ˆ˜ ์žˆ๋‹ค. - ํ•˜๋‚˜์˜ ๋ฆฌ์†Œ์Šค์—์„œ ํŒŒ์ƒํ• ์ˆ˜์žˆ๋Š” ์ถ”๊ฐ€์ž‘์—…๋„ ํ™•์ธ ๊ฐ€๋Šฅ - ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•ด์•ผํ•  ์ž‘์—…์˜ ์–‘์ด ๋Š˜์–ด๋‚จ - ํด๋ผ์ด์–ธํŠธ ์ž…์žฅ์—์„œ๋Š” ์ถ”๊ฐ€์ •๋ณด๋ฅผ ํ•œ๋ฒˆ์— ์–ป์„์ˆ˜์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Œ. 1. Counsumer first 2. Make best use of HTTP 3. Request ..

Spring 2021. 3. 19. 23:30