๐ API์ ๋ํด
์ ์ ๊ฐ๋จํ๊ฒ ์์ฑํ ์ ์ด ์์ง๋ง ์ต๊ทผ๋ฒ์ ์ผ๋ก ๋ค์ ์์ฑํด ๋ณด์ํ๋ค.
API?
API๋ application programming interface(์์ฉ ํ๋ก๊ทธ๋จ ํ๋ก๊ทธ๋๋ฐ ์ธํฐํ์ด์ค)์ ์ฝ์๋ค.
๋ง์ด ๊ธธ์ด์ ๊ทธ๋ ์ง, ๋ป์ ๋จ์ํ๋ค.
์๋ก ๋ค๋ฅธ ์์ฉ ํ๋ก๊ทธ๋จ(์ ํ๋ฆฌ์ผ์ด์
)์ด ๊ธฐ๋ฅ์ด๋ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ํํธ์จ์ด ์ธํฐํ์ด์ค๋ค.
Application : ๊ณ ์ ํ ๊ธฐ๋ฅ์ ๊ฐ์ง ๋ชจ๋ ์ํํธ์จ์ด
Interface : ๋ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ์ ์๋น์ค ๊ณ์ฝ
์ฆ ์๋ก ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ด ์๋ก์๊ฒ ๋ถํํ๋ ๋ฐฉ๋ฒ์ด๋ค.
์์
์ฐ๋ฆฌ๊ฐ ํธ๋ํฐ์์ โ์นด์นด์ค ๋ก๊ทธ์ธโ ๋ฒํผ์ ๋๋ฅธ๋ค.
๊ทธ ์๊ฐ ํธ๋ํฐ์ ์นด์นด์ค ์๋ฒ์๊ฒ ์ด ์์ด๋์ ๋น๋ฐ๋ฒํธ๊ฐ ๋ง๋์ง ํ์ธํด์ค ์ด๋ ๊ฒ ๋งํ๋ ์
์ด๋ค.
์๋ฒ๋ ๊ฒ์ฌ ํ ์ด์๋ํด ๋ก๊ทธ์ธ ์ฑ๊ณต, ๋ก๊ทธ์ธ ์คํจ๋ก ๋๋ต์ ํ๋ค.
์ด ๊ณผ์ ์ด ๋ฐ๋ก ํด๋ผ์ด์ธํธ(ํธ๋ํฐ) โ ์๋ฒ(์นด์นด์คํก) ๊ตฌ์กฐ๋ค.
์ด์ธ์๋ ํด๋ผ์ด์ธํธ(ํธ๋ํฐ)๋ ๋ฉ์ธ์ง ์ ์ก, ์น๊ตฌ ์ถ๊ฐ ๋ฑ ์ ๋ง์ ์์ฒญ์ ์๋ฒ(์นด์นด์คํก)์๊ฒ ๋ณด๋ผ ์ ์๋ค.
ํ์ง๋ง ์ด๋ฌํ ์์ฒญ์ ๊ทธ๋๊ทธ๋ ์์์ ์ฒ๋ฆฌํด์คํ๋ ์์ผ๋ก ์๋ฒ์์ ๋์ํ๋ ๊ฒ์ ๋งค์ฐ ๋นํจ์จ์ ์ด๋ค.
๊ทธ๋์ ๋ฏธ๋ฆฌ ์ ํด๋๋ ๊ฒ์ด๋ค.
๋ก๊ทธ์ธ ์์ฒญ์ ์ด๋ฐ ํ์์ผ๋ก ๋ณด๋ด์ธ์.
๋ฉ์์ง ์ ์ก์ ์ด๋ฐ ํ์์ผ๋ก ๋ณด๋ด์ธ์.
์น๊ตฌ ๋ชฉ๋ก์ ์ด ์ฃผ์๋ก ์์ฒญํ์ธ์.
์ด๋ ๊ฒ ๊ฐ๊ฐ์ ์์ฒญ์ ๋ด๋นํ๋ ์๋ฒ์๊ฒ ์์ฒญ์ด ์ ์ ๋ฌ ๋ฐ ์ฒ๋ฆฌ๋ ์ ์๋๋ก ํด์ฃผ๋ ์ฒด๊ณ๊ฐ ๋ฐ๋ก API๋ค.
์ฆ, ์ด๋ ํ ๋ฐฉ์์ผ๋ก ์ ๋ณด๋ฅผ ์์ฒญํด์ผ ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ๊ทธ๋ฌํ ์์ฒญ์ ๋ณด๋์ ๋ ์ด๋ ํ ํ์์ผ๋ก ๋ฌด์จ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌ๋ฐ์ ์ ์๋์ง์ ๋ํด ์ ๋ฆฌํ ์ผ์ข
์ ์ฝ์์ด๋ค.

์ด๋๋ ์ดํด๊ฐ ์๊ฐ๋ฉด ๋ ์ฝ๊ฒ ์ค๋ช
ํ ์ ์๋ค.
API๋ ์๋น์ ๋ฉ๋ดํ์ด๋ค.
๊ณ ๊ฐ์ ์ฃผ๋ฐฉ์ด ์ด๋ป๊ฒ ์๊ฒผ๋์ง, ์ด๋ป๊ฒ ์๋ฆฌ๋ฅผ ํด์ผํ๋ ์ง ๋ชจ๋ฅธ๋ค.
ํ์ง๋ง ๋ฉ๋ดํ์ ๋ณด๋ฉด ๋ถ๊ณ ๊ธฐ ๋ฒ๊ฑฐ, ์ฝ๋ผ ๋ฑ ์ด๋ค ๋ฉ๋ด๊ฐ ์๋ ์ง ์ ์ ์๋ค.
์ฃผ๋ฌธ ์์๋ โ๋ถ๊ณ ๊ธฐ ๋ฒ๊ฑฐ ํ๋ ์ฃผ์ธ์โ ์ด๋ ๊ฒ ์ฃผ๋ฌธ ํ๋ฉด ๋์ด๋ค.
๋ง์ฝ ๋ฉ๋ดํ(API)๊ฐ ์๋ค? ์ฌ๋ฃ๊ฐ ์ด๋์๋์ง ๋ถํฐ ์๋ฆฌ ๋ฐฉ๋ฒ๊น์ง ๋ฐฐ์์ผํ๋ค..
๋๋ฌด ์ด์ง์ด ์ํฉ์ด๋ค ์ด๊ฑด,,
API์ ์ฃผ์ ํน์ง
์ฃผ์ ํน์ง ๋ช ๊ฐ์ง๋ง ์ดํด ๋ณด์
๊ธฐ๋ฅ ์ ๊ณต
๋ง ๊ทธ๋๋ก API๋ ํน์ ๊ธฐ๋ฅ์ ์ธ๋ถ์ ์ ๊ณตํ๋ค.
๋ก๊ทธ์ธ ์ฒ๋ฆฌ, ์ฌ์ฉ์ ์ ๋ณด ์กฐํ, ๊ฒ์๊ธ ์์ฑ ๋ฑ ์ฐ๋ฆฌ๋ ๊ทธ ๊ธฐ๋ฅ์ ๋ด๋ถ ๊ตฌํ์ ๋ชฐ๋ผ๋ API๋ฅผ ํธ์ถํ๋ ๊ฒ๋ง์ผ๋ก ํด๋น ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋ค.
์ ๋ณด ์๋
๋ด๋ถ ๋์ ๋ฐฉ์์ ๊ฐ์ถ๊ณ , ํ์ํ ๋ฐ์ดํฐ/๊ธฐ๋ฅ ๋ง์ ๋
ธ์ถ ์ํจ๋ค.
๋ก๊ทธ์ธ์ ์์๋ก ๋ค๋ฉด ์ฐ๋ฆฌ๋ ๋จ์ํ ์์ด๋์ ๋น๋ฐ๋ฒํธ๋ฅผ ์๋ฒ์ ๋ณด๋ด์ง๋ง,
์๋ฒ ๋ด๋ถ์์๋ ๋น๋ฐ๋ฒํธ ์ํธํ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์กฐํ ๋ฑ ์ฌ๋ฌ ์์
์ด ์งํ๋๋ค.
์ด๋ฌํ ๊ณผ์ ์ ์ธ๋ถ์ ๊ณต๊ฐํ์ง ์๊ณ ํ์ํ ๊ธฐ๋ฅ๋ง ์ ๊ณตํ๋ ๊ฒ, ์ด๊ฒ ๋ฐ๋ก ์ ๋ณด ์๋์ด๋ค.
์ฐ๋ฆฌ๋ ๋๋ถ์ ๋ด๋ถ ๊ตฌ์กฐ๊ฐ ๋ฐ๋์ด๋ ์ธ๋ถ ์ฌ์ฉ ๋ฐฉ์์ ์ ์ง๋ ์ ์๋ค.
ํ์คํ๋ ํต์
API๋ ์๋ฌด ๋ฐฉ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ง ์๋๋ค.
HTTP / HTTPS, REST, GraphQL๊ณผ ๊ฐ์ ํ์ค์ ๋ฐ๋ฅธ๋ค.
์ฆ ์์ฒญ ๋ฐฉ์๊ณผ ์๋ต ํ์์ด ์ ํด์ ธ ์๋ค.
GET : ์กฐํ, POST : ์์ฑ, JSON : ๋ฐ์ดํฐ ํ์
๊ฐ์ด ํต์ ๊ท์น์ด ํ์คํ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ํ์ฌ, ๋ค๋ฅธ ์ธ์ด, ๋ค๋ฅธ ์์คํ
๋ผ๋ฆฌ๋ ๋ฌธ์ ์์ด ์ฐ๊ฒฐ๋ ์ ์๋ค.
๊ฐ๋ฐ ํจ์จ ํฅ์
API๋ ํ ๋ฒ ๋ง๋ค์ด๋๋ฉด ์ฌ๋ฌ ์๋น์ค์์ ์ฌ์ฌ์ฉํ ์ ์๋ค.
๋ํ ํ ๊ฐ๋ฐ์์ ๋์์ ์์
ํ ์ ์๊ธฐ์ ๊ฐ๋ฐ ์๋์ ์์ฐ์ฑ์ด ํฌ๊ฒ ์ฌ๋ผ๊ฐ๋ค.
๋ฐฉ๊ธ๊น์ง ์ฐ๋ฆฌ๋ API์ ๋ํด ์์๋ณด์๋ค.
๊ทธ๋ ๋ค๋ฉด API๋ ์๋ฌด๋ ๊ฒ๋ ๋ง๋ค์ด๋ ๋ ๊น?
๊ธฐ๋ฅ๋ง ์ ๋์ํ๋ฉด ๋์ผ๊น?
์ฌ์ค API์๋ ์ค๊ณ ๋ฐฉ์์ด ์กด์ฌํ๋ค. ๊ทธ ์ค ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ ๋ฐฉ์์ด ๋ฐ๋ก REST๋ค.
REST
REST(Representational State Transfer)๋ ์์์ ์ค์ฌ์ผ๋ก URL์ ์ค๊ณํ๊ณ , HTTP ๋ฉ์๋๋ก ํ์๋ฅผ ๊ตฌ๋ถํ๋ API ์ค๊ณ ๋ฐฉ์์ด๋ค.
๋ฒ์จ ๋ง์ด ์ด๋ ต๋ค..์ฝ๊ฒ ์ค๋ช
ํ๋ฉด
์๋ฒ ์์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฃผ์๋ก ๊ตฌ๋ถํด์, ํ์ํ ๋ ๊ฐ์ ธ์ค๊ฑฐ๋ ๋ฐ๊พธ๋ ๋ฐฉ์
์ฆ ์๋ฒ๋ฅผ โํ์ผ ๋ณด๊ดํจโ ์ฒ๋ผ ๋ค๋ฃฌ๋ค๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค.
โข ๊ฐ์ ธ์ค๊ธฐ โ GET
โข ์๋ก ๋ฃ๊ธฐ โ POST
โข ์์ ํ๊ธฐ โ PUT
โข ์ญ์ ํ๊ธฐ โ DELETE
REST API ํน์ง
๊ท ์ผํ ์ธํฐํ์ด์ค
์ฆ REST๋ ์ฌ์ฉ ๋ฐฉ์์ด ํญ์ ๋น์ทํด์ผ ํ๋ค๋ ๊ฒ์ด๋ค.
์ด๋ค API๋ /getUser, ์ด๋ค API๋ /userInfo.. ์ด๋ฐ์์ผ๋ก ๋์ค๋ฉด ์์ธก์ด ์๋๋ค.
๊ทธ๋์ /users, /users/1 ์ด๋ฐ์์ผ๋ก ํ์์ ์์ ์ค์ฌ์ผ๋ก ํต์ผํ๋ ๊ฒ์ด๋ค.
๊ท ์ผํ ์ธํฐํ์ด์ค์๋ 4๊ฐ์ง ์กฐ๊ฑด์ด ์๋ค.
1๏ธโฃ ์ฃผ์๋ก ์์์ ๋ช ํํ ๊ตฌ๋ถํด๋ผ
โ /users/1 ์ฒ๋ผ ๋๊ตฌ์ธ์ง ํ์คํ ๋ณด์ด๊ฒ ํํ
2๏ธโฃ ํด๋ผ์ด์ธํธ๊ฐ ๋ฐ์ ์ ๋ณด๋ง์ผ๋ก ์ดํด ๊ฐ๋ฅํด์ผ ํ๋ค
โ ์๋ต ์์ ํ์ํ ๋ฐ์ดํฐ ๋ค ๋ค์ด์์ด์ผ ํ๋ค
3๏ธโฃ ์๋ต์ ์ค๋ช ์ด ํฌํจ๋์ด์ผ ํ๋ค
โ JSON ๊ตฌ์กฐ๊ฐ ๋ช ํํ๊ณ ์๋ฏธ๊ฐ ๋ถ๋ช ํด์ผ ํ๋ค
4๏ธโฃ ๋ค์์ ๋ญ ํ ์ ์๋์ง๋ ์๋ ค์ค ์ ์๋ค
โ ๊ด๋ จ ๋งํฌ๋ ์ถ๊ฐ ์ ๋ณด ์ ๊ณต ๊ฐ๋ฅ
์ฆ ๋๊ตฌ๋ ์์ธก ๊ฐ๋ฅํ๊ฒ API๋ฅผ ๋ง๋ค์๋ ๊ฒ์ด ๊ท ์ผํ ์ธํฐํ์ด์ค์ด๋ค.
๋ฌด์ํ (Stateless)
์ ์ผ ์ค์ํ ํน์ง์ด๋ค.
โ์๋ฒ๋ ์ด์ ์์ฒญ์ ๊ธฐ์ตํ์ง ์๋๋คโ
์๋น์ ๋น์ ๋ก ์ค๋ช
์ ํด๋ณด์!
์ฐ์ ์ํ๊ฐ ์๋ ๊ฒฝ์ฐ์๋
- ์ฝ๋ผ ์ฃผ์ธ์
- ์๊น ๊ฑฐ์ ๋ถ๊ณ ๊ธฐ ๋ฒ๊ฑฐ๋ ์ถ๊ฐํด์ฃผ์ธ์.
์ด๋ฐ์์ผ๋ก ์ฃผ๋ฌธ์ ํ ๊ฒ์ด๋ค..์ด๋ฌ๋ฉด ์ง์์ ์๊น์ ๋ด์ฉ์ ๋ชจ๋ ๊ธฐ์ต์ ํด์ผํ๋ ์ํฉ์ด ์จ๋ค.
ํ์ง๋ง ๋ฌด์ํ ์ํฉ์ ์์๋ฅผ ๋ณด์ - ์ฝ๋ผ ์ฃผ์ธ์
- ์ฝ๋ผํ๋ ๋ถ๊ณ ๊ธฐ ๋ฒ๊ฑฐ ํ๋ ์ฃผ์ธ์
๋ฌด์ํ ์ฑ์ด๊ธฐ์ ๋๋ฒ์งธ ์ฃผ๋ฌธ์ ์ฒซ๋ฒ์งธ ์ฃผ๋ฌธ์ ๊ธฐ์ตํ ํ์๊ฐ ์๋ค. ์ง๊ธ ๋ค์ด์จ ์ฃผ๋ฌธ๋ง ์ฒ๋ฆฌํ๋ฉด ๋๋ ๊ฒ์ด๋ค.
์ด๊ฒ ๋ฌด์ํ์ฑ์ด๋ค.
API๋ฅผ ๋์ ์์ผ ์๊ฐํด๋ณด์
์ํ๊ฐ ์๋ API์ธ ๊ฒฝ์ฐ์๋
1๏ธ. ๋ก๊ทธ์ธ ์์ฒญ
2๏ธ. ์๋ฒ๊ฐ ์ด ์ฌ๋ ๋ก๊ทธ์ธํ์ง ๊ธฐ์ต
3๏ธ. ๋ค์ ์์ฒญ์์ ์ธ์ฆ ์ ๋ณด ์์ด ์ฒ๋ฆฌ
์ฆ ์๋ฒ๊ฐ ๊ณ์ ๊ธฐ์ตํด์ผ ํ๋ค.
๋ฐ๋ฉด ๋ฌด์ํ์ฑ์ - ๋ก๊ทธ์ธ โ ํ ํฐ ๋ฐ๊ธ
2๏ธ. ์ดํ ์์ฒญ๋ง๋ค ํ ํฐ์ ๊ฐ์ด ๋ณด๋
์๋ฒ๋ ๋งค ์์ฒญ ์ โ์ด ํ ํฐ์ด ์ ํจํ๊ฐ?โ, โ๊ถํ์ด ์๋๊ฐ?โ๋ง ํ์ธํ๊ณ ์ฒ๋ฆฌํ๋ค. ์ด์ ์์ฒญ์ ๊ธฐ์ตํ ํ์๊ฐ ์๋ค.
์ด๋ฐ์์ผ๋ก ๋ฌด์ํ์ฑ์ ์๋ฒ๊ฐ ๋จ์ํด์ง๊ณ , ์๋ฒ๊ฐ ํ์ฅํ๊ธฐ๋ ํธ๋ฆฌํด์ง๋ค.
๊ณ์ธตํ ์์คํ
ํด๋ผ์ด์ธํธ๋ ์ค๊ฐ์ ๋ญ๊ฐ ์๋์ง ๋ชฐ๋ผ๋ ๋๋ค.
์ด๊ฑด ์ฝ๋ค. ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ํด ์๋ API ์๋ฒ, DB๋ฑ ๊ทธ๋ฅ ๊ด์ฌ ์์ด ์ค์ง ํด๋ผ์ด์ธํธ๋
์๋ฒ๋ ๋ํ(ํต์ )ํ๋ค ๋ผ๊ณ ๋ง ์๊ฐํ๋ฉด ๋๋ค
์บ์ ๊ฐ๋ฅ์ฑ
๋ค๋ค ํ๋ฒ ์ฉ์ ๋ค์ด๋ดค์๊ฑฐ๋ค.
์์ฃผ ์ฌ์ฉํ๋, ์์ฃผ ์ ๋ฐ๋๋ ๋ฐ์ดํฐ๋ ์ ์ฅํด๋๊ณ ๋ค์ ์ฐ์.
๊ณตํต ์ด๋ฏธ์ง ๊ฐ์ ๊ฒ์ ๋งค๋ฒ ์๋ฒ์ ์์ฒญํ๋ฉด ๊ท์ฐฎ์ง ์์๊ฐ? ์ด๊ฑธ ์บ์ฑํด์ ๋ค์๋ฒ์ ๋ ์ฌ์ฉํ๋ฉด ๋๋ ๊ฒ์ด๋ค.
์จ๋๋งจ๋ ์ฝ๋
์๋ฒ๊ฐ ์ฝ๋๋ฅผ ๋ณด๋ด์ ํด๋ผ์ด์ธํธ ๊ธฐ๋ฅ์ ์ ๊น ํ์ฅํ ์ ์๋ค.
์๋ฅผ ๋ค๋ฉด ์ ํ๋ฒํธ ํ๋ฆฌ๋ฉด ๋ฐ๋ก ๋นจ๊ฐ์์ผ๋ก ํ์๋๋ ๊ฒ์ด๋ค.
์๋ฒ์์ ์ ์กํ ์ฝ๋๋ก ์ธํด ์ด ์์
์ ์ํํ ์ ์์ง๋ง ์์ฃผ ์ฌ์ฉํ์ง๋ ์๋๋ค.
REST API ์ค๊ณ
- URL์๋ ๋ช
์ฌ ์ฌ์ฉ (๋์ฌ x)
- /getAllUser โ
- /users, /users/{id} โ
- URL ๊ฒฝ๋ก์๋ ์๋ฌธ์ ์ฌ์ฉ
- ํ์ดํฐ(-)์ URL ๊ฐ๋ ์ฑ ๋์ด๋๋ฐ ์ฌ์ฉ
- ๋ฐ์ค(_)์ URL์ ์ฌ์ฉ ๊ธ์ง
- HTTP ๋ฉ์๋ ํ์ฉ
- GET : ์ ๋ณด ์์ฒญ
- POST : ์ ๋ณด ์์ฑ
- DELETE : ์ ๋ณด ์ญ์
- PUT : ์ ๋ณด ์ ์ฒด ์์
- PATCH : ์ ๋ณด ์ผ๋ถ ์์
- HTTP ์๋ต ์ํ ์ฝ๋ ํ์ฉ
- 200 : OK
- 201 : Created
- 400 : Bad Request
- 401 : Unauthoized
- 404 : Not Found
- 500 : Internal Server Error
- ๊ณ์ธต ๊ด๊ณ๋ ์ฌ๋์(/)๋ก ํํํ๊ณ URL ๋ง์ง๋ง์ ์ฌ๋์ x
- ํ์ผ ํ์ฅ์๋ URL์ ํฌํจ x
- http//seungje.com/api/photo.png โ
- http//seungje.com/api/photo โ
- ์กฐํ์์๋ ์ฟผ๋ฆฌ ํ์ฉ
- ํ์ด์ง๋ ํํฐ๋ง ์ ๋ณด๋ ์ฟผ๋ฆฌ ํ๋ผ๋ฏธํฐ ํ์ฉ
- ๋ฆฌ์์ค๊ฐ ๊ด๊ณ์๋ ๊ฒฝ์ฐ
- โ/๋ฆฌ์์ค๋ช /๋ฆฌ์์คID/๊ด๊ณ๊ฐ ์๋ ๋ค๋ฅธ ๋ฆฌ์์ค๋ช โ์ผ๋ก ํฌํ
REST API์ RESTful API ์ฐจ์ด
์ ์ผ ํท๊ฐ๋ฆฌ๋ ๋ถ๋ถ์ด๋ค.
๋๋ถ๋ถ REST API์ RESTful API๋ ๊ฑฐ์ ๊ฐ์ ๋ง์ฒ๋ผ ์ฐ์ธ๋ค.
ํ์ง๋ง ์ฝ๊ฐ์ ์ฐจ์ด๊ฐ ์๋ค.
REST API : REST ๋ฐฉ์์ ์ฌ์ฉํ API
RESTful API : REST์ ์์น์ ์ ์งํจ API
REST API ์ฅ์
๋ง์ง๋ง์ผ๋ก REST๋ฅผ ์ ์ฌ์ฉํ๋์ง์ ๋ํด ์์๋ณด์. ๊ทธ์ ์ค๋ช
๋ง ๋์ดํ์ง ์ ์ผ ์ค์ํ ๊ทธ๋์ ์ ์ฌ์ฉํ๋์ง์ ๋ํด์๋ ์์ง ์๋ฌธ์ด ๋ค์๋ ์๋ค.
REST ๋ฐฉ์์ผ๋ก ์ค๊ณ๋ API์ ๊ฐ์ฅ ํฐ ์ฅ์ ์ ์์ธก ๊ฐ๋ฅ์ฑ๊ณผ ํ์ฅ์ฑ์ด๋ค.
REST ๋ฐฉ์์ผ๋ก ์ค๊ณ๋ API๋์ฒ์ ๋ณด๋ ์ฌ๋๋ ์ด๋ ์ ๋ ๊ฐ์ผ๋ก ์ดํดํ ์ ์๋ค.
GET /users/1
์ด๊ฑธ ๋ณด๋ฉด ๋๋ถ๋ถ 1๋ฒ ์ฌ์ฉ์๋ฅผ ์กฐํํ๋ค๋ผ๋ ์ฌ์ค์ ์ ์ ์๋ค. ์ด์ฒ๋ผ REST๋
๊ตฌ์กฐ๊ฐ ํต์ผ๋์ด ์๊ธฐ ๋๋ฌธ์ ํ์
ํ๊ธฐ ์ข๋ค.
๋ํ REST๋ ๋ฌด์ํ ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ฅธ๋ค.
์ฆ, ์์ฒญ ํ๋๋ง ๋ด๋ ์๋ฒ๊ฐ ์ฒ๋ฆฌํ ์ ์๋ค.
์ด๊ฒ ์ ์ค์ํ๋๋ฉด ์ฌ์ฉ์๊ฐ ๋ง์์ก์ ๋ ์๋ฒ๋ฅผ ์ฌ๋ฌ ๋๋ก ๋๋ฆฌ๊ธฐ ์ฝ๊ธฐ ๋๋ฌธ์ด๋ค.
์์ฒญ์ด ๋
๋ฆฝ์ ์ด๊ธฐ ๋๋ฌธ์์ด๋ ์๋ฒ๊ฐ ๋ฐ์๋ ์ฒ๋ฆฌ ๊ฐ๋ฅํ๋ค. ๋ํ ์๋น์ค๋ค์ด REST ๋ฐฉ์์ ๋ง์ด ์ฌ์ฉํ๋ ์ด์ ๋ค.
๋ง์ง๋ง์ผ๋ก REST๋ ํน์ ์ธ์ด๋ ํ๋ ์์ํฌ์ ๋ฌถ์ด์ง ์๋๋ค.
์๋ฒ๋ Java๋ก ๋ง๋ค๊ณ , ํด๋ผ์ด์ธํธ๋ React๋ก ๋ง๋ค๊ณ , ๋ค๋ฅธ ํด๋ผ์ด์ธํธ๋ Swift๋ก ๋ง๋ค ์ ์๋ค.
REST๋ HTTP ๊ธฐ๋ฐ์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ์ ์ ์ข
์๋์ง ์๊ธฐ ๋๋ฌธ์ด๋ค.
์ด์ฒ๋ผ REST๋ ๋จ์ํ ์ ํํด์๊ฐ ์๋๋ผ ์์๊ฐ์ ์ด์ ๋ก ์ฌ์ฉ์ ํ๋ ๊ฒ์ด๋ค.