์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Firebase
- ๊ฐ๋ฐ์
- native
- type
- NEXT
- ๋ถํธ์บ ํ
- ํ๋ก์ ํธ
- API
- K-Digital
- PROJECT
- ํจ์
- ์ฝ๋ฉ
- JS
- ๋ด์ผ๋ฐฐ์
- rn
- ํ์ค
- ํ๋ก ํธ์๋
- ์จ๋ผ์ธ
- ๋ณ์
- react
- ์๋ฌ
- ๋ด์ผ๋ฐฐ์์บ ํ
- ๋ฆฌ์กํธ
- trainning
- ํ์
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์๊ณ ๋ฆฌ์ฆ
- wil
- JavaScript
- Redux
- Today
- Total
Frontend ๊ฐ๋ฐ์ - hyo.loui
Restful API๋? ๋ณธ๋ฌธ
๐ฏ๋ชฉ์ :
Restful API์ ๋ํด ๊ธฐ๋กํ๋ฉฐ,
GET,POST ์ธ์ ์๊ณ ์๋ ๋ฉ์๋์ ๊ทธ ๊ธฐ์ค์ ์ค๋ช ํ๊ณ
Restful API ๊ฐ ์๋ ๊ฒ๋ค์ ์ด๋ค๊ฒ ์๋์ง ๊ธฐ๋กํฉ๋๋ค.
Restful API๋?
- Restful API๋ ํ์ค HTTP ๋ฉ์๋ ์งํฉ์ ์ฌ์ฉํ์ฌ ๋ฆฌ์์ค์ ๋ํ ์์
์ ์ํํ๋ ์น ์๋น์ค๋ฅผ ์ค๊ณํ๊ธฐ ์ํ ์ํคํ
์ฒ ์คํ์ผ์
๋๋ค.
- Restful API์์ ๊ฐ ๋ฆฌ์์ค๋ ๊ณ ์ ํ URI๋ก ์๋ณ๋ฉ๋๋ค. ํด๋ผ์ด์ธํธ(์: ์น ๋ธ๋ผ์ฐ์ ๋๋ ๋ชจ๋ฐ์ผ ์ฑ)๋ ํ์ค HTTP ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฌํ ๋ฆฌ์์ค์ ์ํธ ์์ฉํ ์ ์์ต๋๋ค.
+ ์๋ฅผ ๋ค์ด, ํด๋ผ์ด์ธํธ๋ ์์ฒญ ๋ณธ๋ฌธ์ ์ฌ์ฉ์ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ JSON ๊ฐ์ฒด์ ํจ๊ป
URI: https://example.com/users๋ก ์์ฒญ์ ์ ์กํ์ฌ ์๋ฒ์ POST ์์ฒญ์ ์ ์กํ์ฌ ์ ์ฌ์ฉ์๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
GET,POST ์ธ์ ์๊ณ ์๋ ๋ฉ์๋์ ๊ทธ ๊ธฐ์ค์ ์ค๋ช
- HTTP Method์ ์ข ๋ฅ์๋ GET, POST, PATCH, PUT, DELETE๋ฑ์ด ์์ผ๋ฉฐ PATCH์์ฒญ์ ๋ฐ์ดํฐ์ ์ผ๋ถ๋ง ๋ณ๊ฒฝํ ๋, PUT์ ๋ฐ์ดํฐ ์ ์ฒด๋ฅผ ๋ณ๊ฒฝํ ๋, DELETE๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
Restful API๊ฐ ์๋ ๊ฒ?
- restful์ธ์ API์ค๊ณ ๊ท์น์ ๋ค์ํ๊ฒ ์์ง๋ง, ์ต๊ทผ ๊ฐ์ฅ ๊ธ๋ถ์ํ๋ API ์ค๊ณ ๊ท์น์ ํ์ด์ค๋ถ์์ ์ ์ํ GraphQL์
๋๋ค.
- GraphQL์ ๋จ์ผ ์๋ํฌ์ธํธ์ ๋ค์ํ ์ฟผ๋ฆฌ๋ฌธ์ ํตํด ์๋ฒ์ ํต์ ํ๊ฒ ๋ฉ๋๋ค.
- ํนํ ํด๋ผ์ด์ธํธ๊ฐ ํ์ํ ๋ฐ์ดํฐ๋ง ์์ฒญํ ์ ์๋๋ก ์ง์ํด, ์๋ฒ์ธก์์ ํ์ํ ๋ฐ์ดํฐ๋ง ๋ฐํํจ์ผ๋ก์จ ๋ฐ์ดํฐ ์ ์ก๋์ - ์ต์ํํ๊ณ ๋ถํ์ํ ์ค๋ณต ์์ฒญ์ ์ค์ด๋ ํจ๊ณผ๋ฅผ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
- ํ์ง๋ง GraphQL์ JSON์ผ๋ก ํต์ ์ ํด์ผํ๊ธฐ ๋๋ฌธ์, ํ์ผ์ ์
๋ก๋ ํ ๋ ๋ถํธํจ์ด ์์ ์ ์์ต๋๋ค. ์ด๋ฅผ ๋ณด์ํ๊ธฐ ์ํด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฑ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
์ต์ข
์ ๋ฆฌ
- Restful API๋ HTTP ๊ธฐ๋ฐ์ API ์ค๊ณ ๊ท์น์ ๋๋ค.
- URI๋ผ๊ณ ํ๋ ์์๊ณผ ๊ทธ์ ๋ํ ๋์์ ์ํํ๋ Method๋ก ์ ์๋ฉ๋๋ค.
- Method์ ์ข ๋ฅ์๋ GET, POST, PATCH, PUT, DELETE๋ฑ์ด ์์ผ๋ฉฐ PATCH์์ฒญ์ ๋ฐ์ดํฐ์ ์ผ๋ถ๋ง ๋ณ๊ฒฝํ ๋, PUT์ ๋ฐ์ดํฐ ์ ์ฒด๋ฅผ ๋ณ๊ฒฝํ ๋, DELETE๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
- restful ์ด์ธ์ API์ค๊ณ ๊ท์น์ ๋ค์ํ๊ฒ ์์ผ๋, ๋ ์ค๋ฅด๋ API ์ค๊ณ ๊ท์น์ ํ์ด์ค๋ถ์์ ์ ์ํ GraphQL์ ๋๋ค.
- GraphQL์ ๋จ์ผ ์๋ํฌ์ธํธ์ ๋ค์ํ ์ฟผ๋ฆฌ๋ฌธ์ ํตํด ์๋ฒ์ ํต์ ํ๊ณ ํ์ํ ๋ฐ์ดํฐ๋ง ๋ฐํํจ์ผ๋ก์จ ๋ฐ์ดํฐ ์ ์ก๋์ ์ต์ํํด ๋ถํ์ํ ์ค๋ณต ์์ฒญ์ ์ค์ด๋ ํจ๊ณผ๋ฅผ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
- GraphQL์ JSON์ผ๋ก ํต์ ์ ํ๊ธฐ ๋๋ฌธ์, ํ์ผ์ ์ ๋ก๋ ํ๊ธฐ ๊น๋ค๋ก์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ์ฉ ํ ์ ์์ต๋๋ค.
'Web' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
HTTP์ HTTP ๋ฉ์ธ์ง (0) | 2023.03.30 |
---|---|
์บ์(cache) (0) | 2023.03.29 |
ํ๋ ์์ํฌ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ฐจ์ด์ (0) | 2023.03.29 |
parameter์ argument์ ์ฐจ์ด (0) | 2023.03.28 |
์นํ์ด์ง๊ฐ ๋ธ๋ผ์ฐ์ ์ ๋๋๋ง๋๋ ๊ณผ์ (1) | 2023.03.27 |