๐ ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ฑํ๋ ๋ฐฉ์์ ๋ํด์ ํ์ตํ๋ค. ํ๋ก ํธ์๋๊ฐ ๋ฐ์ดํฐ๋ฅผ API๋ฅผ ํตํด์ ๋ฐ์ ๋ ์น์ ์ฅ์ ์ ์ต๋ํ ํ์ฉํด์ ๋ฐ๊ธฐ ์ํด์ ์ค๊ณ๋ ์ํคํ ์ณ์ด๋ค. ์ด๋ฐ๊ฒ ๊น์ง ์ ๋ฐฐ์ด๋ค๋ผ๊ณ ๋งํ๋ค๋ฉด ์ด๋ฐ๊ฒ๋ ๋ฐฐ์์ผ ํ๋ค๊ณ ๋ต์ ํ ์ ์์ ๊ฒ์ด๋ค.
๐ ์ค๋ ํ์ตํ ๋ด์ฉ
REST API
- Representational State Transfer
- ์น์ ์ฅ์ ์ ์ต๋ํ ํ์ฉํ ์ ์๋ ์ํคํ ์ฒ
- ์น์์ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ ์์(Resource)์ HTTP URI๋ก ํํํ๊ณ HTTP ํ๋กํ ์ฝ์ ํตํด ์์ฒญ๊ณผ ์๋ต์ ์ ์ํ๋ ๋ฐฉ์
- ์์ฑ๋ฒ(์ฑ์๋ ๋ชจ๋ธ)
- ์ฑ์๋ ๋ชจ๋ธ 0๋จ๊ณ
- HTTP ํ๋กํ ์ฝ๋ง ์ฌ์ฉํด๋ ๋๋ค.
- REST API๋ฅผ ์์ฑํ๊ธฐ ์ํ ๊ธฐ๋ณธ๋จ๊ณ
- ์ฑ์๋ ๋ชจ๋ธ 1๋จ๊ณ
- ๊ฐ๋ณ ๋ฆฌ์์ค์์ ํต์ ์ค์
- ๋ชจ๋ ์์์ ๊ฐ๋ณ ๋ฆฌ์์ค์ ๋ง๋ ์๋ํฌ์ธํธ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ฉฐ ์์ฒญํ๊ณ ๋ฐ๋ ์์์ ๋ํ ์ ๋ณด๋ฅผ ์๋ต์ผ๋ก ์ ๋ฌํด์ผ ํ๋ ๊ฒ
- ์ฑ์๋ ๋ชจ๋ธ 2๋จ๊ณ
- CRUD์ ๋ง๊ฒ ์ ์ ํ HTTP ์ฌ์ฉ์ ์ค์ ์ ๋๋ค.
- HTTP ๋ฉ์๋ ๊ท์น
HTTP ๋ฉ์๋ ๊ท์น | |
GET ๋ฉ์๋(Read) | ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ๋ณํ์ํค์ง ์๋ ์์ฒญ์ ์ฌ์ฉํด์ผ ํ๋ค. |
POST ๋ฉ์๋(Create) | ์์ฒญ๋ง๋ค ์๋ก์ด ๋ฆฌ์์ค๋ฅผ ์์ฑํ๋ค. |
PUT ๋ฉ์๋ (Update) | ์์ฒญ๋ง๋ค ๊ฐ์ ๋ฆฌ์์ค๋ฅผ ๋ฐํํ๋ค. |
PUT ๋งค์๋์ POST๋ฉ์๋๋ฅผ ๊ตฌ๋ถํด์ ์ฌ์ฉํด์ผ ํ๋ค. | |
PUT ๋ฉ์๋(๊ต์ฒด)์ PATCH ๋ฉ์๋(์์ )๋ ๊ตฌ๋ถํด์ ์ฌ์ฉํด์ผ ํ๋ค. |
- ์ฑ์๋ ๋ชจ๋ธ 3๋จ๊ณ
- HATEOAS(Hypertext As The Engine Of Application State) ํ์ดํผ ๋ฏธ๋์ด ์ปจํธ๋กค์ ์ฌ์ฉํ๋ค.
- ์์ฒญ์ 2๋จ๊ณ์ ๋์ผํ๋ค.
- ์๋ต์ ๋ฆฌ์์ค์ URI๋ฅผ ํฌํจํ ๋งํฌ ์์๋ฅผ ์ฝ์ ํด ์์ฑํ๋ค.
OPEN API
- ๋๊ตฌ์๊ฒ๋ ์ด๋ ค์๋ API
API
- ์๋ฒ๋ ํด๋ผ์ด์ธํธ์๊ฒ ๋ฆฌ์์ค๋ฅผ ์ ํ์ฉํ ์ ์๋๋ก ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ๊ฒ
API Key
- ๋ก๊ทธ์ธํ ์ด์ฉ์์๊ฒ ์์์ ์ ๊ทผํ ์ ์๋ ๊ถํ์ ๋ถ์ฌํ๋ค.
- ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ ๋ API Key์ ๊ฐ์ด ์ ๋ฌํด์ผ ์ํ๋ ์๋ต์ ๋ฐ์ ์ ์๋ค.
๐ ์ถ๊ฐ๋ก ๊ณต๋ถํ ๋ด์ฉ
Postman
- ๊ตฌ์ฑ
- ์ฌ์ฉ๋ฒ
React
- React ์ฌ์ฉ๋ฒ
๐ ์ค๋ ๋๋ ์ & ๋ง์ ๊ฐ์ง
- Rest API์ ์์ฑ๋ฒ์ ๋ํด์ ๊ณต๋ถํ ๋งํผ ์ฌ์ฉํ ๋๋ ์ถฉ๋ถํ ๊ท์น์ ์งํฌ ์ ์์ ๊ฒ ๊ฐ๋ค.
- ๋ค์์ฃผ์ ์ค์ ๋ก REST API๋ฅผ ํ ๋๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ ๊ฒ์ ์ค์ตํ๋ ๋ฏธ๋ฆฌ ์์ตํด๋ณด์!
- ์ฃผ๋ง์๋ ํด์ ์๊ณ ๋ฆฌ์ฆ ๋ฐ ๋ฆฌ์กํธ๋ฅผ ์กฐ๊ธ ๋ ์ฌ์ฉํด ๋ณผ ์ ์๋๋ก ํ์!
'Daily > Today I Learned' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
22.06.13_TIL (0) | 2022.06.13 |
---|---|
22.06.11_TIL (4) | 2022.06.11 |
22.06.09_TIL (0) | 2022.06.09 |
22.06.08_TIL (0) | 2022.06.09 |
22.06.07_TIL (0) | 2022.06.08 |