UMC ์„œ๋ฒ„ 6์ฃผ์ฐจ ์„ธ๋ฏธ๋‚˜ (11/2, ์ˆ˜์š”์ผ)

2022. 11. 2. 19:19ใ†UniversityMakeUsChallenge/UMCServer

 

 

 

 

 

 

API?!

 

์ฟผ๋ฆฌ ์งœ๋Š” ๊ฒƒ์ด ๋ฏธ์…˜

 

๋…ธ์…˜์„ ๊ต‰์žฅํžˆ ๊น”๋”ํ•˜๊ณ  ์˜ˆ์˜๊ฒŒ ์“ฐ์…”์„œ ์ธ์ƒ๊นŠ์—ˆ๋‹ค.

 

์ข‹์€ ์ฟผ๋ฆฌ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•, ์ฟผ๋ฆฌ์— ๋Œ€ํ•ด ๋” ์กฐ์‚ฌํ•ด๋ณด์ž (๋‚˜๋„ ์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋‹ค๋ค„๋ณด๊ณ  ์‹ถ๋‹ค!)

 

User ํ…Œ์ด๋ธ” ๋‚ด๋ถ€์˜ ๊ฐ’์— ๋‹ค์‹œ User๋ผ๋Š”๊ฑธ ์จ์•ผํ•  ํ•„์š”๊ฐ€ ์žˆ์„๊นŒ? (์—†์• ๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•˜์‹ฌ)

 

+ ์กฐ์ธํ•  ๋•Œ, ์ถ•์•ฝํ˜• ์“ฐ๋Š” ๊ฒƒ ์ถ”์ฒœํ•˜์ง€ ์•Š๋Š”๋‹ค.

+ ์ปฌ๋Ÿผ๋ช…์ด ๋งˆ์Œ์— ์•ˆ๋“ค ๋•Œ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ๋งŒ ๊ถŒ์žฅ

 

์˜ค๋”๋ฐ”์ด

 

์ด ํ™”๋ฉด์—์„œ ์„œ๋ฒ„์—์„œ ๊ฐ€์ ธ์˜จ ๊ฒƒ๋“ค์€ ๋ฌด์—‡์ด ์žˆ์„๊นŒ?

 

 

- ๊ฒ€์ƒ‰์€ ์•„๋‹ˆ๋‹ค (์•„์ง ์•„๋ฌด ๊ฒƒ๋„ ๊ฒ€์ƒ‰ ์•ˆํ•จ, ๋กœ๊ทธ์ธ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€)

- ๊ด‘๊ณ , ๋‚ ์”จ ๋“ฑ๋“ฑ: ํ˜„์žฌ ์ƒํ™ฉ์—์„œ DB์—์„œ ๋ถˆ๋Ÿฌ์˜จ ๊ฐ’ (์„œ๋ฒ„์™€ ์—ฐ๊ฒฐ๋œ ๋ถ€๋ถ„๋“ค)

- ๋ ˆ์ด์•„์›ƒ์„ ์ œ์™ธํ•œ ๊ฒƒ๋“ค์€ ๋ชจ๋‘ DB์— ์ €์žฅ๋œ ๊ฐ’์„ ๋ถˆ๋Ÿฌ์˜จ ๊ฒƒ

- ์‹ค์ œ ์„œ๋น„์Šค ํ™”๋ฉด์„ ๋ณด๊ณ , ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์–ด๋–ค ๊ฐ’๋“ค์„ ๋ณด๋‚ด์ค˜์•ผ๊ฒ ๊ตฌ๋‚˜ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋œ๋‹ค.

 

- ์ฟผ๋ฆฌ๋ฅผ ์งค ๋•Œ, Join ๋ฌธ์„ ๋งŽ์ด ์จ๋ด์•ผ ํ•œ๋‹ค.

- ์ตœ๋Œ€ํ•œ ๋งŽ์€ ์ •๋ณด๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋„๋ก ์ฟผ๋ฆฌ๋ฅผ ์งœ๋ด์•ผ ํ•œ๋‹ค.

 

 

 

 

ํ†ต์‹  ํ”„๋กœํ† ์ฝœ

 

http ํŒจํ‚ท์˜ ๊ตฌ์กฐ

 

์šด์†ก์žฅ๊ณผ ๋‚ด์šฉ๋ฌผ

 

ํ—ค๋”๋ฅผ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๋ผ๊ณ ๋„ ํ•œ๋‹ค. (๋‚˜๋„ '๋ฉ”ํƒ€๋ฐ์ดํ„ฐ' ๋– ์˜ฌ๋ž์Œ! ์‹ ๊ธฐ๋ฐฉ๊ธฐ)

 

CRUD : ํ•ด๋‹น ๋ฐฉ์‹๋Œ€๋กœ ๋ฉ”์„œ๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค

 

patch: ์ผ๋ถ€๋ฅผ ๋ณ€ํ™”, Update: ์ „์ฒด๋ฅผ ๋ณ€ํ™”

 

 

  • Get
    •  ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๊ฒƒ 
    • ๊ทธ๋Ÿผ http์˜ body๋ฅผ ๊ฐ€์ ธ์˜ค๋‚˜?  X
    • Query String & Path Variable ์„ ํ™œ์šฉํ•œ๋‹ค.
  • Post
    • ๋ฐ์ดํ„ฐ ์ž์ฒด๋ฅผ ๋ณด๋‚ด๋Š” ๊ฒƒ
    • body์— ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์•„์„œ ๋ณด๋‚ธ๋‹ค.
    • ๋ฐ์ดํ„ฐ ์ƒ์„ฑ์„ ์œ„ํ•œ ๊ฒƒ
      • ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ ๋ณด๋‚ด๋ฉด ์ข‹์„์ง€ ๊ณ ๋ฏผํ•œ๋‹ค.
      • ์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ ๋ฐ›์•„์•ผ ํšจ์œจ์ ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์งค ์ˆ˜ ์žˆ์„๊นŒ?

 

 

๋ฏธ๋ฆฌ ํ˜•์‹์„ ๋งž์ถฐ๋‘” ๊ฒƒ์„ ๋ฐ์ดํ„ฐ ํฌ๋งท์ด๋ผ๊ณ  ํ•œ๋‹ค. ex) JSON, xml

 

 

  • JSON๊ณผ xml์˜ ์ฐจ์ด
    • xml -> markup language (HTML)

 

 

ํƒœ๊ทธ ํ˜•์‹์œผ๋กœ ์กด์žฌํ•˜๋Š” ๊ฒƒ

 

 

JSON์˜ ํ˜•์‹ (xml๊ณผ ๋‹ค๋ฅด๋‹ค)

 

 

xml์˜ ๋ฌธ์ œ์  (JSON์€ ํ•œ ๋Ž์Šค๋ฅผ ๋” ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋‹ค, ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋ฅผ ๋” ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•˜์‹ฌ)

 

 

์œ ์ง€๋ณด์ˆ˜ํ•˜๊ธฐ ์ข‹๋‹ค (๊ฐ์ฒด, ์˜ค๋ธŒ์ ํŠธ ๋‹จ์œ„), ๋ฐ์ดํ„ฐ๊ฐ€ ํ›จ์”ฌ ๊ฐ€๋ฒผ์šธ ์ˆ˜ ์žˆ๋‹ค. ํ˜„์—…์—์„œ๋Š” JSON ์‚ฌ์šฉ

 

 

 

 

์‰ฌ๋Š”์‹œ๊ฐ„