CodeGym /Java Blog /๋ฌด์ž‘์œ„์˜ /REST ๊ฐœ์š”. ํŒŒํŠธ 1: REST๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
John Squirrels
๋ ˆ๋ฒจ 41
San Francisco

REST ๊ฐœ์š”. ํŒŒํŠธ 1: REST๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋ฌด์ž‘์œ„์˜ ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
์•ˆ๋…•! ์˜ค๋Š˜ ์šฐ๋ฆฌ๋Š” ๋งค์šฐ ํฅ๋ฏธ๋กญ๊ณ  ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋…ธ๋™ ์‹œ์žฅ์—์„œ ์ˆ˜์š”๊ฐ€ ๋งŽ์€ ์ฃผ์ œ์ธ REST์— ๋Œ€ํ•ด ๋ฐฐ์šธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. REST ๊ฐœ์š”.  ํŒŒํŠธ 1: REST๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?  - 1 REST์— ๋Œ€ํ•œ ๊ฐœ์š”๋ฅผ ์„ธ ๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋ˆŒ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  1. ์ฒซ ๋ฒˆ์งธ ๋ถ€๋ถ„์—์„œ๋Š” REST์˜ ์—ญ์‚ฌ๋ฅผ ๋‹ค๋ฃจ๊ณ  REST์˜ ๊ธฐ๋ฐ˜์ด ๋˜๋Š” ์›์น™์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

  2. ๋‘ ๋ฒˆ์งธ์—์„œ๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹ ์ด HTTP ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ๋ฐœ์ƒํ•˜๋Š” ๋ฐฉ์‹์„ ๊ณ ๋ คํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  3. ์„ธ ๋ฒˆ์งธ์—์„œ๋Š” "Postman"์ด๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ…Œ์ŠคํŠธํ•  ์ž‘์€ RESTful ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์„œ๋Š” ๋‹ค์Œ ์šฉ์–ด์— ์ต์ˆ™ํ•œ ๋…์ž๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.
  • HTTP
  • URL ๋ฐ URI
  • JSON ๋ฐ (์•ฝ๊ฐ„์˜) XML
  • ์˜์กด์„ฑ ์ฃผ์ž…

ํŒŒํŠธ 1. REST๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

IT ์„ธ๊ณ„์—์„œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ REST๋Š” ์•ฝ์–ด์ž…๋‹ˆ๋‹ค. "REpresentational State Transfer" ์—์„œ ํŒŒ์ƒ๋ฉ๋‹ˆ๋‹ค . ์ด๊ฒƒ์€ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ์—์„œ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ์œ„ํ•œ ์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ์ž…๋‹ˆ๋‹ค. ๊ฐ„๋‹จํžˆ ๋งํ•ด REST๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์œ„์น˜์— ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์œ„์น˜ํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ์Šคํ…œ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„์˜ ์ƒํ˜ธ ์ž‘์šฉ(๋ฐ์ดํ„ฐ ๊ตํ™˜) ์Šคํƒ€์ผ์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ์€ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์„ ์„ค๊ณ„ํ•  ๋•Œ ์ค€์ˆ˜ํ•ด์•ผ ํ•˜๋Š” ์ผ๊ด€๋œ ์ œ์•ฝ ์กฐ๊ฑด ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ œ์•ฝ ์กฐ๊ฑด์„ REST์˜ ๊ธฐ๋ณธ ์›์น™์ด๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์ง€ ์•Š๊ณ  6 ๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
REST ์›์น™์„ ์—ผ๋‘์— ๋‘๊ณ  ๊ตฌ์ถ•๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ์ฆ‰ REST ์ œ์•ฝ ์กฐ๊ฑด์„ ์œ„๋ฐ˜ํ•˜์ง€ ์•Š๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ "RESTful"์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

REST์˜ ์—ญ์‚ฌ

REST๋ผ๋Š” ์šฉ์–ด๋Š” HTTP ํ”„๋กœํ† ์ฝœ์˜ ์ฐฝ์‹œ์ž ์ค‘ ํ•œ ๋ช…์ธ Roy Fielding์ด ๊ทธ์˜ ๋ฐ•์‚ฌ ํ•™์œ„์—์„œ ์†Œ๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. 2000๋…„ "์•„ํ‚คํ…์ฒ˜ ์Šคํƒ€์ผ ๋ฐ ๋„คํŠธ์›Œํฌ ๊ธฐ๋ฐ˜ ์†Œํ”„ํŠธ์›จ์–ด ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„"๋ผ๋Š” ์ œ๋ชฉ์˜ ๋…ผ๋ฌธ. REST๋ผ๋Š” ์šฉ์–ด๋Š” ์•„์ง ์ Š๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ๊ฒƒ์ด ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐœ๋…์€ ์›”๋“œ ์™€์ด๋“œ ์›น์˜ ํ•ต์‹ฌ์— ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์šฉ์–ด์˜ ์—ญ์‚ฌ์— ๋Œ€ํ•ด ๊นŠ์ด ํŒŒ๊ณ ๋“ค์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฃผ์š” ์†Œ์Šค์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋ ค๋ฉด Fielding์˜ ๋…ผ๋ฌธ์„ ์‚ดํŽด๋ณด์‹ญ์‹œ์˜ค .

REST ์ œ์•ฝ ์กฐ๊ฑด ๋ฐ ์›์น™

์œ„์—์„œ ์„ค๋ช…ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ REST๋Š” ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์„œ๋กœ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๊ฒƒ์€ ์š”์ฒญ-์‘๋‹ต ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ํด๋ผ์ด์–ธํŠธ๋ผ๊ณ  ํ•˜๊ณ  ์š”์ฒญ ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ํด๋ผ์ด์–ธํŠธ์— ์‘๋‹ต์„ ๋ณด๋‚ด๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์„œ๋ฒ„๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค .. ์š”์ฒญ ๋ฐ ์‘๋‹ต์€ ๋Œ€๋ถ€๋ถ„ HTTP ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•ด ์ „์†ก๋ฉ๋‹ˆ๋‹ค. HTTP๋Š” HyperText Transfer Protocol์˜ ์•ฝ์ž์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์„œ๋ฒ„๋Š” ์ผ๋ถ€ ์›น ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ๊ฑฐ์˜ ๋ชจ๋“  ๊ฒƒ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•˜๋Š” ๋ชจ๋ฐ”์ผ ์•ฑ์ž…๋‹ˆ๋‹ค. ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•ด ์›น ํŽ˜์ด์ง€์—์„œ ์„œ๋ฒ„๋กœ ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๋ธŒ๋ผ์šฐ์ €์ž…๋‹ˆ๋‹ค. Application A๋Š” Application B์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ A๋Š” B์— ๋Œ€ํ•œ ํด๋ผ์ด์–ธํŠธ์ด๊ณ  B๋Š” A์— ๋Œ€ํ•œ ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ๋™์‹œ์— A๋Š” B, C, D ๋“ฑ์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ A๋Š” ์„œ๋ฒ„์ด์ž ํด๋ผ์ด์–ธํŠธ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์€ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ํ•œ ๊ฐ€์ง€๋Š” ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋Š” ํด๋ผ์ด์–ธํŠธ์ž…๋‹ˆ๋‹ค. ์š”์ฒญ์„ ์ˆ˜์‹ , ์ฒ˜๋ฆฌ ๋ฐ ์‘๋‹ตํ•˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์š”์ฒญ-์‘๋‹ต ํ”„๋กœ์„ธ์Šค๋ฅผ ํ†ตํ•ด ํ†ต์‹ ํ•˜๋Š” ๋ชจ๋“  ์‹œ์Šคํ…œ์ด RESTful ์‹œ์Šคํ…œ์ธ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์ด RESTful๋กœ ๊ฐ„์ฃผ๋˜๋ ค๋ฉด 6๊ฐœ์˜ REST ์ œ์•ฝ ์กฐ๊ฑด์„ ์ค€์ˆ˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

1. ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ์•„ํ‚คํ…์ฒ˜

์ด ์ œ์•ฝ ์กฐ๊ฑด์€ ๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ์ธํ„ฐํŽ˜์ด์Šค์˜ ์š”๊ตฌ ์‚ฌํ•ญ๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์„œ๋ฒ„์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ๊ตฌ๋ถ„ํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ œ์•ฝ ์กฐ๊ฑด์€ ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ํ”Œ๋žซํผ์— ๋” ์‰ฝ๊ฒŒ ์ด์‹ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ฉฐ ์„œ๋ฒ„ ์ธก์„ ๋‹จ์ˆœํ™”ํ•˜๋ฉด ์‹œ์Šคํ…œ์˜ ํ™•์žฅ์„ฑ์ด ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค. "ํด๋ผ์ด์–ธํŠธ"์™€ "์„œ๋ฒ„"๋ฅผ ๊ตฌ๋ถ„ํ•˜๋ฉด ์„œ๋กœ ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

2. ๋ฌด๊ตญ์ ์ž

RESTful ์•„ํ‚คํ…์ฒ˜๋Š” ๋‹ค์Œ ์กฐ๊ฑด์„ ์ถฉ์กฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ์‚ฌ์ด์˜ ๊ธฐ๊ฐ„ ๋™์•ˆ ์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์ƒํƒœ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ €์žฅํ•ด์„œ๋Š” ์•ˆ ๋˜๋ฉฐ ๊ทธ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ์˜ ๋ชจ๋“  ์š”์ฒญ์€ ์š”์ฒญ์„ ์™„๋ฃŒํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ชจ๋“  ์ •๋ณด๋ฅผ ์„œ๋ฒ„์— ์ œ๊ณตํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๋ชจ๋‘ ์ด์ „ ๋ฉ”์‹œ์ง€์— ์˜์กดํ•˜์ง€ ์•Š๊ณ  ์ˆ˜์‹ ๋œ ๋ฉ”์‹œ์ง€๋ฅผ "์ดํ•ด"ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. ์บ์‹œ ๊ฐ€๋Šฅ

ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„ ์‘๋‹ต์„ ์บ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ›„์† ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ์˜ค๋ž˜๋˜๊ฑฐ๋‚˜ ์ž˜๋ชป๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•˜์ง€ ์•Š๋„๋ก ๋ช…์‹œ์ ์œผ๋กœ ๋˜๋Š” ์•”์‹œ์ ์œผ๋กœ ์บ์‹œ๋จ ๋˜๋Š” ์บ์‹œ๋˜์ง€ ์•Š์Œ์œผ๋กœ ์ง€์ •๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ฌ๋ฐ”๋ฅธ ์บ์‹ฑ์€ ์ผ๋ถ€ ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ์ƒํ˜ธ ์ž‘์šฉ์„ ์™„์ „ํžˆ ๋˜๋Š” ๋ถ€๋ถ„์ ์œผ๋กœ ์ œ๊ฑฐํ•˜์—ฌ ์‹œ์Šคํ…œ ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์„ ๋”์šฑ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

4. ํ†ต์ผ๋œ ์ธํ„ฐํŽ˜์ด์Šค

RESTful ์•„ํ‚คํ…์ฒ˜์˜ ๊ธฐ๋ณธ ์š”๊ตฌ ์‚ฌํ•ญ์—๋Š” ํ†ต์ผ๋˜๊ณ  ๊ท ์ผํ•œ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๋Š” ์š”์ฒญ์„ ๋ณด๋‚ผ ๋•Œ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ํ˜•์‹๊ณผ ์ฃผ์†Œ๋ฅผ ํ•ญ์ƒ ์ดํ•ดํ•ด์•ผ ํ•˜๋ฉฐ, ์„œ๋ฒ„๋„ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ์‘๋‹ตํ•  ๋•Œ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ํ˜•์‹์„ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฌด์—‡์„, ์–ด๋””์„œ, ์–ด๋–ค ํ˜•์‹์œผ๋กœ, ์–ด๋–ป๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ๊ฒƒ์ธ์ง€๋ฅผ ์„ค๋ช…ํ•˜๋Š” ์ด ์ผ๊ด€๋œ ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ์ƒํ˜ธ ์ž‘์šฉ์ด ํ†ตํ•ฉ ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค.

5. ๋ ˆ์ด์–ด

๊ณ„์ธต์ด๋ž€ ๋„คํŠธ์›Œํฌ์˜ ๊ณ„์ธต์  ๊ตฌ์กฐ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋•Œ๋กœ๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์™€ ์ง์ ‘ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๊ณ  ๋•Œ๋กœ๋Š” ์ค‘๊ฐ„ ๋…ธ๋“œ์™€๋งŒ ํ†ต์‹ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ค‘๊ฐ„ ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ๋ฐ ๋ถ„์‚ฐ ์บ์‹ฑ ๋•๋ถ„์— ํ™•์žฅ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ์ธ๊ธฐ ์žˆ๋Š” ๋ชจ๋ฐ”์ผ ์•ฑ์„ ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. ์•ฑ์˜ ํ•„์ˆ˜์ ์ธ ๋ถ€๋ถ„์€ ์‚ฌ์ง„์„ ๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜๋ฐฑ๋งŒ ๋ช…์— ๋‹ฌํ•˜๋ฏ€๋กœ ๋‹จ์ผ ์„œ๋ฒ„๊ฐ€ ์ด๋Ÿฌํ•œ ๋ฌด๊ฑฐ์šด ๋กœ๋“œ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์„ ๊ณ„์ธต์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋ฉด ์ด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ค‘๊ฐ„ ๋…ธ๋“œ์— ์‚ฌ์ง„์„ ์š”์ฒญํ•˜๋ฉด ์ค‘๊ฐ„ ๋…ธ๋“œ๋Š” ํ˜„์žฌ ๋ถ€ํ•˜๊ฐ€ ๊ฐ€์žฅ ์ ์€ ์„œ๋ฒ„์— ์‚ฌ์ง„์„ ์š”์ฒญํ•˜๊ณ  ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์‚ฌ์ง„์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๊ณ„์ธต ๊ตฌ์กฐ์˜ ๊ฐ ์ˆ˜์ค€์—์„œ ์บ์‹ฑ์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ ์šฉ๋˜๋ฉด

6. ์ฃผ๋ฌธํ˜• ์ฝ”๋“œ(์„ ํƒ ์‚ฌํ•ญ)

์ด ์ œ์•ฝ ์กฐ๊ฑด์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์• ํ”Œ๋ฆฟ์ด๋‚˜ ์Šคํฌ๋ฆฝํŠธ์˜ ํ˜•ํƒœ๋กœ ์„œ๋ฒ„์—์„œ ์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

RESTful ์•„ํ‚คํ…์ฒ˜์˜ ์žฅ์ 

์•ž์„œ ์–ธ๊ธ‰ํ•œ ๋ชจ๋“  ์ œ์•ฝ ์กฐ๊ฑด์„ ์ค€์ˆ˜ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์•ˆ์ •์„ฑ(์†์‹ค๋  ์ˆ˜ ์žˆ๋Š” ํด๋ผ์ด์–ธํŠธ ์ƒํƒœ๋ฅผ ์ €์žฅํ•  ํ•„์š”๊ฐ€ ์—†์Œ)
  • ์„ฑ๋Šฅ(์บ์‹œ ์‚ฌ์šฉ์œผ๋กœ ์ธํ•œ)
  • ํ™•์žฅ์„ฑ
  • ํˆฌ๋ช…ํ•œ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜
  • ๊ฐ„๋‹จํ•œ ์ธํ„ฐํŽ˜์ด์Šค
  • ํœด๋Œ€์„ฑ
  • ์‰ฝ๊ฒŒ ๋ณ€๊ฒฝํ•˜๋Š” ๋Šฅ๋ ฅ
  • ์ƒˆ๋กœ์šด ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๊ฒŒ ์ง„ํ™”ํ•˜๊ณ  ์ ์‘ํ•˜๋Š” ๋Šฅ๋ ฅ
REST ๊ฐœ์š”. 2๋ถ€: ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹  REST ๊ฐœ์š”. 3๋ถ€: Spring Boot์—์„œ RESTful ์„œ๋น„์Šค ๊ตฌ์ถ•
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION