๐ ์ค๋์ ํ์ต ํค์๋
- REST
๐ฅ REST
Representational State Transfer์ ์ฝ์๋ก, ์์์ ์ด๋ฆ์ผ๋ก ๊ตฌ๋ถํ์ฌ ํด๋น ์์์ ์ํ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ชจ๋ ๊ฒ.
- HTTP URI(Uniform Resource Identifier)๋ฅผ ํตํด ์์(Resource)์ ๋ช ์ํ๊ณ ,
- HTTP Method(POST, GET, PUT, DELETE, PATCH ๋ฑ)๋ฅผ ํตํด
- ํด๋น ์์(URI)์ ๋ํ CRUD Operation์ ์ ์ฉํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
โ๏ธ CRUD Operation
CRUD๋ ๋๋ถ๋ถ์ ์ปดํจํฐ ์ํํธ์จ์ด๊ฐ ๊ฐ์ง๋ ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ธ
Create(์์ฑ), Read(์ฝ๊ธฐ), Update(๊ฐฑ์ ), Delete(์ญ์ )๋ฅผ ๋ฌถ์ด์ ์ผ์ปซ๋ ๋ง๋ก
REST์์์ CRUD Operation ๋์ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
Create : ๋ฐ์ดํฐ ์์ฑ(POST)
- POST : ๋ฑ๋ก + a
Read : ๋ฐ์ดํฐ ์กฐํ(GET)
- GET : ์กฐํ
Update : ๋ฐ์ดํฐ ์์ (PUT, PATCH)
- PUT : ์ ์ฒด ์์
- PATCH : ์ผ๋ถ ์์
Delete : ๋ฐ์ดํฐ ์ญ์ (DELETE)
- DELETE : ์ญ์
๐ฅ REST API
REST API๋ REST์ ์๋ฆฌ๋ฅผ ๋ฐ๋ฅด๋ API๋ฅผ ๋งํฉ๋๋ค.
ํ์ค์ ์์ต๋๋ค. (์ธ์ธํ ๋ถ๋ถ์ด ํ์ฌ๋ง๋ค, ํ๋ง๋ค, ์ฌ๋๋ง๋ค, ๋๋ผ๋ง๋ค, ๋ฌธํ๋ง๋ค ๋ค๋ฅด๋ค)
์ํต์ ๋๋ ๋ฆฌ์์ค๋ฅผ ์ค์ด๊ธฐ ์ํด์ฐ์ ๋๋ค.
1. ๋์ฌ๋ณด๋จ ๋ช ์ฌ๋ฅผ, ๋จ์๋ณด๋จ ๋ณต์๋ฅผ
/member/get/item/hello (x)
/members/items (o)
2. ๋ง์ง๋ง์ / ๋ฃ์ง ์๊ธฐ
/members/ (x)
/members (o)
3. _ ๋์ - ์ฌ์ฉ + ๋๋ฌธ์ ์ฌ์ฉํ์ง ์๊ธฐ
/restful_services (x)
/restful-services (o)
4. ํ์ฅ์ ํฌํจํ์ง ์๊ธฐ(svg, png, exe ๋ฑ)
/image.svg (x)
/images (o)
5. ๊ณ์ธตํ
/items/{memberId}/members/{itemId} (x)
/members/{memberId}/items/{itemId} (o)
๐ ์ค๋์ ํ๊ณ
REST์ ๋ํด์ ๊ทธ๋ฅ ๋ค์ด๋ง ๋ดค์ง๋ง, ์ด๋ ๊ฒ ์ ๋ฆฌํ๋ ๊ฒ์ ์ฒ์์ธ ๊ฒ ๊ฐ์์
ํฅ๋ฏธ๋ก์ ์ต๋๋ค.