Rest.md
REST
Full name
"Representational State Transfer"
์ง์ญํ๋ฉด '๋ํ ์ํ ์ ์ก'
REST์ ๊ตฌ์ฑ
์์(resource) - URI
ํ์(Verb) - HTTP METHOD
ํํ(Representations)
REST์ ํน์ง
1. Uniform
Uniform Interface
URI๋ก ์ง์ ํ ์์์ ๋ํ ์กฐ์์ ํต์ผ๋๊ณ ํ์ ์ ์ธ ์ธํฐํ์ด์ค๋ก ์ํํ๋ ์ํคํ ์ฒ ์คํ์ผ
2. Stateless - ๋ฌด์ํ์ฑ
์์ ์ ์ํ ์ํ๋ฅผ ๋ฐ๋ก ์ ์ฅํ์ง ์๋๋ค.
์ธ์ ์ ๋ณด๋ ์ฟ ํค์ ๋ณด๋ฅผ ๋ฐ๋ก ์ ์ฅํ๊ณ ๊ด๋ฆฌํ์ง ์๊ธฐ๋๋ฌธ์ API ์๋ฒ๋ ๋ค์ด์ค๋ ์์ฒญ๋ง์ ๋จ์ํ ์ฒ๋ฆฌํ๋ค.
3. Cacheable - ์บ์ ๊ฐ๋ฅ
HTTP๊ฐ ๊ฐ์ง ์บ์ฑ๊ธฐ๋ฅ ์ ์ฉ๊ฐ๋ฅ
4. Self-descriptiveness - ์์ฒด ํํ ๊ตฌ์กฐ
REST API ๋ฉ์์ง๋ง ๋ณด๊ณ ๋ ์ดํดํ ์ ์๋ ํํ ๊ตฌ์กฐ๋ก ๋์ด์๋ค.
5. Client-Server ๊ตฌ์กฐ
REST ์๋ฒ๋ API๋ฅผ ์ ๊ณตํ๊ณ ,
ํด๋ผ์ด์ธํธ๋ ์ฌ์ฉ์ ์ธ์ฆ์ด๋ ์ปจํ ์คํธ(session, ๋ก๊ทธ์ธ ์ ๋ณด ๋ฑ)์ ์ง์ ๊ด๋ฆฌํ๋ ๊ตฌ์กฐ๋ก ๊ตฌ๋ถ๋๋ค.
๋๋ฌธ์ ์๋ก ๊ฐ๋ฐํด์ผํ ๋ด์ฉ์ด ๋ช ํํด์ง๊ณ ์์กด์ฑ์ด ์ค์ด๋ค๊ฒ ๋๋ค.
6. ๊ณ์ธตํ ๊ตฌ์กฐ
REST ์๋ฒ๋ ๋ค์ค ๊ณ์ธต์ผ๋ก ๊ตฌ์ฑ๋ ์ ์์ผ๋ฉฐ ๋ณด์, ๋ก๋ ๋ฐธ๋ฐ์ฑ, ์ํธํ ๊ณ์ธต์ ์ถ๊ฐํ ์ ์์ด ์ ์ฐํ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง ์ ์๊ณ ํ๋ก์, ๊ฒ์ดํธ ์จ์ด ๊ฐ์ ๋คํธ์ํฌ ๊ธฐ๋ฐ์ ์ค๊ฐ๋งค์ฒด๋ฅผ ์ฌ์ฉํ ์ ์๋ค.
Last updated