๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŒท Spring/๊ฐœ๋…

[Spring] REST์™€ API ๊ทธ๋ฆฌ๊ณ  REST API๋ž€?

by ._.sori 2025. 7. 16.

 

 

Swagger๋ฅผ ํ†ตํ•ด
API์˜ ๋ช…์„ธ์„œ๋ฅผ ๋งŒ๋“ค์–ด๋ณด๋ คํ–ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ REST API์™€ ์—ฐ๊ด€์ด ์žˆ๋Š” ๋“ฏ ํ•˜๋‹ค.
REST API๊ฐ€ ๋ญ˜๊นŒ?

 

 

 

 

 

REST๋ž€?

  • REST๋Š” Representational State Transfer์˜ ์•ฝ์ž์ด๋‹ค.
  • ์ž์›์„ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ํ•ด๋‹น ์ž์›์˜ ์ƒํƒœ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๋ชจ๋“  ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.
  • HTTP URI๋ฅผ ํ†ตํ•ด ์ž์›์„ ๋ช…์‹œํ•˜๊ณ , HTTP Method(GET, POST ๋“ฑ)๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ์ž์›(URI)์— ๋Œ€ํ•œ ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ๋“ค์„ ์ ์šฉํ•œ๋‹ค.
  • ์—ฌ๊ธฐ์„œ ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ์€ CRUD Operation์œผ๋กœ Create(์ƒ์„ฑ), Read(์ฝ๊ธฐ), Update(๊ฐฑ์‹ ), Delete(์‚ญ์ œ)๋ฅผ ๋งํ•œ๋‹ค.

 

 

 

REST์˜ ๋‹จ์ 

  • ํ‘œ์ค€ ์ž์ฒด๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์•„ ์ •์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
  • HTTP Method ํ˜•ํƒœ๊ฐ€ ์ œํ•œ์ ์ด๋‹ค.
  • ๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ†ตํ•ด ํ…Œ์ŠคํŠธํ•  ์ผ์ด ๋งŽ์€ ์„œ๋น„์Šค๋ผ๋ฉด ์‰ฝ๊ฒŒ ๊ณ ์น  ์ˆ˜ ์žˆ๋Š” URL๋ณด๋‹ค Header ์ •๋ณด์˜ ๊ฐ’์„ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์ „๋ฌธ์„ฑ์ด ์š”๊ตฌ๋œ๋‹ค.

 

 

 

API๋ž€?

  • API๋Š” Application Programming Interface์˜ ์•ฝ์ž์ด๋‹ค.
  • ์†Œํ”„ํŠธ์›จ์–ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์ด ์„œ๋กœ ํ†ต์‹ ํ•˜๊ณ  ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ทœ์น™, ํ”„๋กœํ† ์ฝœ, ๋„๊ตฌ๋“ค์˜ ์ง‘ํ•ฉ์ด๋‹ค.
  • ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก, ์šด์˜ ์ฒด์ œ๋‚˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“  ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋œปํ•œ๋‹ค.
  • ์›น API๋Š” ํด๋ผ์ด์–ธํŠธ์™€ ์›น ๋ฆฌ์†Œ์Šค ์‚ฌ์ด์˜ ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์„ ์œ„ํ•œ ๊ฒŒ์ดํŠธ์›จ์ด๋‹ค.

 

 

 

REST API๋ž€?

  • REST๋ผ๋Š” ์„ค๊ณ„ ์›์น™์— ๋”ฐ๋ผ ๋งŒ๋“  ์‹ค์ œ API
  • ์˜ˆ๋ฅผ ๋“ค์–ด, /hello๋ผ๋Š” URL๋กœ GET ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด hello๋ผ๋Š” ๊ธ€์ž๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์‹์œผ๋กœ HTTP ๋ฉ”์„œ๋“œ(GET, POST ๋“ฑ)์™€ URL ์กฐํ•ฉ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๋ฐฉ์‹์ด๋‹ค.
  • REST API๋Š” API๋ฅผ ์ด๋Ÿฐ ์‹์œผ๋กœ ๋งŒ๋“ค์ž๋Š” ์•ฝ์†์ด๋‹ค.

์ถœ์ฒ˜: https://www.skiplevel.co/blog/part-2-rest-api-components-how-to-read-them

 

 

  • HTTP Request์—๋Š” ์—”๋“œํฌ์ธํŠธ, HTTP ๋ฉ”์„œ๋“œ, Request Headers, Request Body๊ฐ€ ์žˆ๋‹ค.
  • HTTP Response์—๋Š” ์ƒํƒœ ์ฝ”๋“œ, Response Headers, Response Body๊ฐ€ ์žˆ๋‹ค.

 

 


 

 

์•„๋ž˜์— ์ถœ์ฒ˜๋ฅผ ๋‚จ๊ฒจ๋‘๊ฒ ์Šต๋‹ˆ๋‹ค.
๋ธ”๋กœ๊ทธ์—” ์ œ๊ฐ€ ์ตœ๋Œ€ํ•œ ์ดํ•ดํ•œ ๋‚ด์šฉ๊นŒ์ง€๋งŒ ์ ๋Š”๊ฑฐ๋ผ
์ถœ์ฒ˜์— ๋“ค์–ด๊ฐ€์‹œ๋ฉด ๋” ๋งŽ์€ ๋‚ด์šฉ์ด ์žˆ์–ด ๊ณต๋ถ€ํ•˜์‹œ๋Š”๋ฐ ๋„์›€๋˜์‹ค๊ฒ๋‹ˆ๋‹ค.

 

๐Ÿชฝ

ํ‹€๋ฆฐ ๋‚ด์šฉ์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ์•Œ๋ ค์ฃผ์„ธ์š”

 

 


 

 

- REST API

 

[๋„คํŠธ์›Œํฌ] REST API๋ž€? REST, RESTful์ด๋ž€?

REST API๋ž€ REST๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ API๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. REST API๋ฅผ ์•Œ๊ธฐ ์œ„ํ•ด REST๋ถ€ํ„ฐ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. REST๋ž€? REST(Representational State Transfer)์˜ ์•ฝ์ž๋กœ ์ž์›์„ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ํ•ด๋‹น ์ž์›์˜ ์ƒ

khj93.tistory.com

 

 

- REST API

 

[Part 2] REST API components & How to read them

In this essay, you’ll get a break down of REST APIs into their essential components so you can confidently discuss, dissect, interact with, and debug them.

www.skiplevel.co

 

 

- API

 

API๋ž€ ๋ฌด์—‡์ผ๊นŒ? API ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ

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

brunch.co.kr

 

 

- REST API

 

REST, RESTful API๋ž€? ๊ฐœ๋… ์‚ดํŽด๋ณด๊ธฐ

์›น ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด REST API, RESTful API๋ผ๋Š” ์šฉ์–ด๋ฅผ ์ž์ฃผ ์ ‘ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋น„์Šทํ•ด ๋ณด์ด์ง€๋งŒ, ์ •ํ™•ํžˆ ์–ด๋–ค ๊ฐœ๋…์ด๊ณ  ์„œ๋กœ ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ์„๊นŒ์š”? ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” REST์™€ RESTful API์˜ ๊ฐœ๋…์„ ์˜ˆ์‹œ์™€

devpro.kr