KIMHYEYUN 2023. 11. 1. 17:26
๋ฐ˜์‘ํ˜•

API์— ๋Œ€ํ•ด์„œ REST API, RESTful API ๋“ฑ๋“ฑ ์—ฌ๋Ÿฌ๊ฐ€์ง€์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ  ์ •๋ฆฌํ–ˆ์ง€๋งŒ, ๋ญ”๊ฐ€ ํ™•์‹คํžˆ ๋นก! ์˜ค์ง€์•Š์•„์„œ ๋‚ด๋ฐฐ์บ  ํ•™์Šต ์ค‘์— ํ•œ ๋ฒˆ๋” ๋‹ค๋ฅธ ๋ ˆํผ๋Ÿฐ์Šค๋“ค์„ ์ฐธ๊ณ ํ•˜์—ฌ ์ •๋ฆฌํ•ด๋ณด์ž!!!!

API(Application Programming Interface)๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก, ์šด์˜ ์ฒด์ œ๋‚˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“  ์ธํ„ฐํŽ˜์ด์Šค

feat. wiki

๋น„์œ ๋ฅผ ํ†ตํ•ด์„œ !!
EX) ์—์–ด์ปจ์„ ๊ฐ€๋™ํ•˜๊ธฐ ์œ„ํ•œ ๊ณผ์ •
์‚ฌ๋žŒ์ธ ๋‚ด๊ฐ€ ์—์–ด์ปจ์„ ์ผœ๊ธฐ ์œ„ํ•ด์„œ ๋ฆฌ๋ชจ์ปจ์˜ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ํ‚ค๊ณ , ๋˜ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ์„œ ์˜จ๋„๋ฅผ ์„ค์ •ํ•จ

  • ๋‚˜ - ๋ฆฌ๋ชจ์ปจ - ์—์–ด์ปจ

์ด ๊ณผ์ •์—์„œ์˜ ๋ฆฌ๋ชจ์ปจ์ฒ˜๋Ÿผ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์šด์˜์ฒด์ œ ๊ทธ๋ฆฌ๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ ์‚ฌ์ด์˜ ์ƒํ˜ธ ์ž‘์šฉ์„ ๋„์™€์คŒ

์›น API

์›น์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์š”์ฒญ(Request)๊ณผ ์‘๋‹ต(Response)์œผ๋กœ ์ž‘๋™ํ•จ

์›น API๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ํ•  ๋•Œ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ฑ ์„œ๋กœ ์š”์ฒญ๊ณผ ์‘๋‹ต์„ ์ฃผ๊ณ  ๋ฐ›๊ธฐ ์œ„ํ•ด์„œ ์ •์˜ํ•œ API

REST API

REST API(Representational State Transfer)๋Š” ์›น ์ƒ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์—ฌ๋Ÿฌ ๋ฆฌ์†Œ์Šค๋ฅผ HTTP URI๋กœ ํ‘œํ˜„ํ•˜๊ณ , ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ํ–‰์œ„๋ฅผ HTTP Method๋กœ ์ •์˜ํ•˜๋Š” ๋ฐฉ์‹

์ฆ‰, ๋ฆฌ์†Œ์Šค๋ฅผ ์–ด๋–ป๊ฒŒ ํ•˜๊ฒ ๋‹ค(HTTP Method + Payload)๋ฅผ ๊ตฌ์กฐ์ ์œผ๋กœ ๊น”๋”ํ•˜๊ฒŒ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•

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

  • ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ํ–‰์œ„๋Š” HTTP Method(POST, GET, PUT, DELETE)๋กœ ํ‘œํ˜„
  • / ๋Š” ๊ณ„์ธต ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉ
  • URI ๋งˆ์ง€๋ง‰์—๋Š” /๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ
  • URI์—๋Š” _ ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ
  • ๋Œ€๋ฌธ์ž๋ณด๋‹ค๋Š” ์†Œ๋ฌธ์ž ์‚ฌ์šฉ
  • ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด ๊ธด ๋‹จ์–ด๋ณด๋‹ค๋Š” ์งง์€ ๋‹จ์–ด ์‚ฌ์šฉ
  • URI์— ๋™์‚ฌ๊ฐ€ ์•„๋‹Œ ๋ช…์‚ฌ ์‚ฌ์šฉ
  • URI์— ํ™•์žฅ์ž๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š์Œ
728x90
๋ฐ˜์‘ํ˜•