RestAPI
API์ ์ ์
- Application Programming Interface์ ์ฝ์๋ก, ์ฑ์ด ์๋ฒ์๊ฒ ์ ๋ณด๋ฅผ ์์ฒญํ๋ ํ์์ด๋ค. 
- ์ฆ S/W๊ฐ ๋ค๋ฅธ S/W์๊ฒ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ธฐ์ํ ์๋จ์ด๋ค. 
- ๋คํธ์ํฌ ๋ฟ๋ง ์๋๋ผ ๋ก์ปฌ ํ๋ก๊ทธ๋จ์์๋ ์กด์ฌํ๋ค. (๋ธ๋ผ์ฐ์ ์ webAPI) 
RestAPI์ ์ ์
- SOAP์ ๋ณต์กํ ํ์์ ๊ฐ์ ํ๊ธฐ ์ํด rest๋ ํ์์ ์์ฒญ ํผ์ด๋ค. 
- ์์ฒญ์ ํํ๋ง ๋ณด๊ณ , ์ด๋ค ๋์์ธ์ง ์ด๋ค ์ ๋ณด๋ฅผ ์ํ ๊ฒ์ธ์ง ์ถ๋ก ์ด ๊ฐ๋ฅํ๋ค. - restfulํ API๋ ์ฃผ์๋ง ๋ณด๊ณ ๋, ์ด๋ค ์์ฒญ์ธ์ง ํ์ ์ด ๊ฐ๋ฅํ๋ฏ๋ก ๊ฐ๋ฐ์๊ฐ ํ์ ์ ์ข์ ์ญํ ์ ํ๋ค. 
 
- HTTP ๊ท์ฝ์ ๋ฐ๋ผ ์ ํธ๋ฅผ ์ ์กํ๊ฒ ๋๋ค. - GET, DELETE, POST, PUT, PATCH๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ค. 
- POST, PUT, PATCH์ ๊ฒฝ์ฐ ๊ฐ๊ฐ Body๊ฐ ์กด์ฌํด์ ๋น๊ต์ ์ผ๋ก ์ ๋ณด๋ฅผ ๊ฐ์ถฐ์ ์ ์กํ ์ ์๋ค. 
- ๊ธฐ๋ฅ์ด ํน์  ์ฉ๋์ ์ ํ๋์ด์์ง๋ ์์ง๋ง Restfulํ๊ฒ API๋ฅผ ๋ง๋ค๊ธฐ ์ํด์๋ ๋ชฉ์ ์ ๋ฐ๋ผ ๊ตฌ๋ถํด์ ์ฌ์ฉํด์ผํ๋ค. 
 
- ์ ํธ - GET : ์กฐํ 
- POST : ์์ฑ, Body์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ ๋ณด๋ธ๋ค. (๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ํ ์ธ๋ฑ์ค๊ฐ ์์ฑ๋๋ฏ๋ก, ์ธ๋ฑ์ค๋ ์ ์ธํ์ง ์๋๋ค.) 
- PUT, PATCH: ์ ๋ฐ์ดํธ, ์ ๋ฐ์ดํธํ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ์ฝ์ ํ๋ค. BODY์ ์๋ก์ด ์ ๋ณด๋ฅผ ๋ฃ๋๋ค. - PUT : ์ ์ฒด ์ ๋ณด๋ฅผ ์ ๋ฐ์ดํธ ํ๋ค. 
- PATCH : ํน์  ์ ๋ณด๋ฅผ ์ ๋ฐ์ดํธํ๋ค. 
- ๊ฐ์ ์ญํ ์ด๋ฉฐ, ๊ทธ๋ฃน์์ ๊ฒฐ์ ํด์ ์ฌ์ฉํ๋ค. 
 
- DELETE : ์ญ์ , ํน์  ์ธ๋ฑ์ค ์ ๋ณด๋ฅผ ์ญ์ ํ๋ค. 
 
- โํ์โ์ด๊ธฐ ๋๋ฌธ์ ํน์  ๊ธฐ์ ์ด๋ ํ๋ ์์ํฌ์ ๊ตฌ์ ๋ฐ์ง ์๋๋ค. - HTTP๋ก ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋๋ค๋ฉด, restfulํ ์๋น์ค๋ฅผ ๋ง๋ค ์ ์๋ค. ( - restful api design guidelines๋ฅผ ๊ณต๋ถํด๋ณด์)
 
- ์ฉ๋์ ๋ฐ๋ผ GraphicQL์ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค. 
Last updated