๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŒฟ Spring

[Spring Boot/RESTful] Web Service & Web Application

by nitronium102 2022. 2. 17.

์›น ์„œ๋น„์Šค

๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์„œ๋กœ ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ์ปดํ“จํ„ฐ๋“ค ๊ฐ„์— ์ƒํ˜ธ์ž‘์šฉํ•˜๊ธฐ ์œ„ํ•œ ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ

 

SOAP VS REST

1) SOAP(Simple object access protocol)

  • XML ๊ธฐ๋ฐ˜
  • envelope - header - body๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Œ -> overhead ์‹ฌํ•จ

2) REST(REpresentational State Transfer)

  • Resource์˜ representation์— ์˜ํ•œ (์ž์›์˜) ์ƒํƒœ ์ „๋‹ฌ
  • HTTP Method๋ฅผ ํ†ตํ•ด Resource๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์•„ํ‚คํ…์ณ
  • RESTful : REST API๋ฅผ ์ œ๊ณตํ•˜๋Š” ์›น ์„œ๋น„์Šค
    • REST
    • HTTP
    • HTTP Methods : ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ์ „๋‹ฌํ•˜๊ฒŒ ๋˜๋Š” ๋ชฉ์ ์ด๋‚˜ ์ข…๋ฅ˜๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์ˆ˜๋‹จ
    • HTTP Status Codes : ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญํ•œ ์ •๋ณด๊ฐ€ ์–ด๋–ค ์ƒํƒœ๋กœ ์ฒ˜๋ฆฌ๋˜์—ˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ๋Š” ์ˆ˜๋‹จ

⇒ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์•Œ๋งž์€ ๋ฐฉ์‹์„ ์ ์ ˆํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ! ํ˜„์žฌ๋Š” REST ๋ฐฉ์‹์ด ๋” ์„ ํ˜ธ๋˜๊ณ  ์žˆ๋‹ค.

 

RESTful

  • HTTP ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ•„์š”ํ•จ
  • ์ œ๊ณต๋˜๋Š” ์ž์›๋“ค์€ ๊ฐ๊ฐ ๊ณ ์œ ํ•œ ์ฃผ์†Œ๊ฐ’์„ ๊ฐ€์ง → URI(Uniform, Resource Identifier)
  • resource๋ฅผ ์š”์ฒญํ•˜๊ฑฐ๋‚˜ ์‘๋‹ตํ•  ๋•Œ๋Š” XML, HTML, JSON ๊ฐ™์€ ๋ฐฉ์‹์ด ๋„๋ฆฌ ์“ฐ์ž„

๋Œ“๊ธ€