๐คทโ๏ธ ๋ณธ๋ก ์ ์์
์ต๊ทผ์ ์๋ก์ด ์กฐ์ง์์ ํ์คํ์ผ๋ก ํ๋ก ํธ & ๋ฐฑ์๋ ์ ๋ฌด๋ฅผ ๋ด๋น์ ๋งก์ผ๋ฉด์ ์๋ก์ด ๊ธฐ์ ์คํ๊ณผ ์ํคํ ์ฒ ๊ทธ๋ฆฌ๊ณ ํ ์ปจ๋ฒค์ ๊ณผ ์ ๋ฌด๋ฐฉ์์ ์ ์ํ๋ฉด์ ์๋ก์ด ๊ฒ์ ๋ํด์ ๋ง์ ์ต๋๊ณผ ๊ณต๋ถ๋ฅผ ํ๊ณ ์์ต๋๋ค.
์ต๊ทผ์ ๋ฐฑ์๋ REST API๋ฅผ ๋ด๋นํ๋ฉด์ Param & Query Parameter์ ๋ํ ์ฐจ์ด์ ๋ํด์ ๊น์ด ์๊ฐ์ ํ๊ฒ ๋๋ฉด์ ์ด๋ ํ ์ค๊ณ๊ฐ ์ข์ ๋ฐฉ์์ธ์ง ์๋์ง ๊ณ ๋ฏผ์ ํ๊ฒ ๋์์ต๋๋ค.
๐คทโ๏ธ Param & Query Parameter ์ฌ์ฉ ๋ฐฉ๋ฒ์ ์ฐจ์ด?
API GET ๋ฉ์๋ ์ข ๋ฅ
API ์์ฒญ์ GET ๋ฉ์๋๋ฅผ ์ปจํธ๋กคํ๊ธฐ ์ํ 2๊ฐ์ง ํํ๋ฅผ ๋ด๊ณ ์๋ค.
- Param
- Query
Param?
- ์ฃผ์์ ํฌํจ๋ ๋ณ์์ ๊ฐ์ ์ฒ๋ฆฌํฉ๋๋ค.
- http://localhost:3000/blog/8763 ์ฃผ์์์ 8763 ๊ฐ์ Path Parameter ๋ถ๋ฆ ๋๋ค.
- ์๋ฒ์์๋ /:blogId ์ด๋ฐ ํํ๋ก ๋ผ์ฐํฐ ๊ฐ์ ๋ฐ์์์ ์ฒ๋ฆฌ ํ ์ ์์ต๋๋ค.
- ํํฐ๋ง or ์ ๋ ฌ ์ฒ๋ผ ์ต์ ๋ํ ๊ฐ์ด ์๋ ์ ์ผํ ๊ฐ์ ์๋ณํ ๋ ์ฌ์ฉํฉ๋๋ค.
Query?
- URL ๋์ ? ๋ฌผ์ํ ๋ค์ ๋ํ๋๋ ๊ฐ http://localhost:3000/blog?type=all&lang=kr ? ๋ค์ key์ value ํํ๋ก &(and) ๊ธฐํธ๋ก key=value ํํ๋ก ๊ตฌ๋ถ๋ฉ๋๋ค. ์๋์ ๊ฐ์ ์ํฉ์์ ๋ง์ด ์ฌ์ฉ๋ฉ๋๋ค.
- ๋ฐ์ดํฐ ํํฐ๋ง
- ๋ฐ์ดํฐ ์ ๋ น
- ๊ฒ์
- ๋ฐ์ดํฐ ํ์ด์ง๋ค์ด์
- ํ์ํ ์กฐ๊ฑด์ ์์ฒญ์ ์ฒ๋ฆฌํด์ผ ๋๋ ์ํฉ์์ ํ์๊ฐ์ด ์๋ ์ต์ ๋ํ ๊ฐ์ผ๋ ์ฌ์ฉํฉ๋๋ค.
๊ฐ์ด ๊ณต๋ถํ๋ฉด ์ข์ URL ์ธ์ฝ๋์ ๋์ฝ๋ ๋ณํํ๋ ๋ฐฉ๋ฒ๊ณผ ๊ฐ๋
https://cometruedream.tistory.com/225
๐คทโ๏ธ Param & Query ์ฐจ์ด?
Param๊ณผ Query์ ์ฐจ์ด์ ๋ํด์ ์๊ฐํด๋ณด๋ฉด ๊ฒฐ๋ก ์ ์ผ๋ก๋ ํ์ ์ปจ๋ฒค์ ๊ณผ ๋ฌธํ๋ฅผ ๋ง์ถฐ์ API URI ์ค๊ณํ๋๊ฒ์ด ๊ฐ์ฅ ์ข์ ๋ฐฉ์์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
์์๋ ๋ณธ๋ถ ํน์ ํ์ ํน๋ณํ ๊ท์น์ด ์๋ค๋ฉด ํ์ ๊ฐ์ด ์๊ตฌ๋๋ ์ํฉ์๋ Param์ ์ฌ์ฉํ๊ณ ์ต์ ๋ํ ๊ฐ์ด ํ์ํ ๋๋ Query๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค.
๋ํด์, ํ์๊ฐ๊ณผ ์ต์ ๋ํ ๊ฐ์ ์ฐจ์ด๋ ์์ง๋ง ๊ฐ๋ ์ฑ์ ์ฐจ์ด๋ ์์ต๋๋ค.
1: /blog?id=kefef
vs
2: /blog/kefef
* ์์ URI ํํ๋ฅผ ๋ณด๋ฉด 1๋ฒ์ Queryํํ๊ฐ ๋ฌด์จ์๋ฏธ์ธ์ง ์ง๊ด์ ์ผ๋ก ๋ํ๋ ๋๋ค.
๋๊ฐ์ URI๋ฅผ ๋ดค์๋ ๊ฐ๋ ์ฑ ๋ฉด์์๋ 1๋ฒ URI๊ฐ ์ง๊ด์ ์ด๊ณ ๊ฐ๋ ์ฑ๋ฉด์์ ์ข์ต๋๋ค.
๊ทธ์ ๋นํด 2๋ฒ์งธ URI๋ ์ง๊ด์ ์ผ๋ก ๋ฌด์จ ์๋ฏธ์ธ์ง๋ฅผ 1๋ฒ URI ๋ณด๋ค ๊ฐ๋ ์ฑ์ด ์ข์ง ์์ต๋๋ค.
Param ๋ณด๋ค๋ Query ์ง๊ด์ ์ด๊ณ ๊ฐ๋ ์ฑ๋ฉด์์ ๋ ์ข๋ค๊ณ ํ๋จ๋ฉ๋๋ค.
๊ฐ๋ ์ฑ๊ณผ ์ง๊ด์ ์ธ ๋ถ๋ถ์ ๊ธฐ์ค์ ์ฃผ๊ด์ ์ด๊ธฐ ๋๋ฌธ์ ํ์ ์ปจ๋ฒค์ ํน์ ๋ฌธํ์ ๋ง์ถฐ์ API ์ค๊ณ๋ฅผ ๋ฐ๋ฅด๊ฑฐ๋ ํ์ ๊ท์น์ด ์๋ค๋ฉด REST API ์ ์์ ๋ฐ๋ฅด๋ฉด์ URI๋ฅผ ์ค๊ณํ๋ฉด ์ข์๊บผ ๊ฐ์ต๋๋ค.
๐คทโ๏ธ Param & Query ์ ๋ฆฌํ์๋ฉด
Param & Query Parameter ์ค์ API URI๋ฅผ ์ด๋ป๊ฒ ์ค๊ณํ ์ง ๊ณ ๋ฏผ์ด ๋ ๋๋ REST API ์ ์์ ๋ฐ๋ฅด๋ฉด Param ์ ์ผํ ๊ฐ์ ์ ์๊ฐ ํ์ํ ๋ Query ์ต์ ๋ํ ๊ฐ์ ์ ์๊ฐ ํ์ํ ๋ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค.
์ฌ๋ฐ๋ ์ค๋์ ๋ ๋ณ ์ด์ธ ๋ณด๊ณ ๊ฐ์ธ์!
https://cometruedream.tistory.com/243
https://cometruedream.tistory.com/242
https://cometruedream.tistory.com/241
https://cometruedream.tistory.com/244
'ITstudy' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[NOSQL] Redis ๊ฐ๋ ๊ณผ ์ฅ์ ์ ๋ฆฌ (2) | 2024.06.07 |
---|---|
ngrok ํ์ฉํด์ ์ธ๋ถ์ ๋ก์ปฌ ์๋ฒ ๊ณต๊ฐ & ํฐ๋๋ง ๋ฐฉ๋ฒ ์ ๋ฆฌ (1) | 2024.06.04 |
์ฝ๊ฒ ์ดํดํ๊ณ ์ฌ์ฉํ ์ ์๋ Prisma ๋ช ๋ น์ด ์ ๋ฆฌ (1) | 2024.05.09 |
[์ปดํจํฐ๋ฉ๋ชจ๋ฆฌ๊ตฌ์กฐ] ๋ฉ๋ชจ๋ฆฌ ์บ์ vs ๋์คํฌ ์บ์ ๊ฐ๋ (2) | 2024.04.18 |
MAC์์ ์ฌ์ฉ์ค์ธ ํน์ ํฌํธ ์ฐพ์์ ํฌํธ killํ๋ ๋ฐฉ๋ฒ (1) | 2024.04.07 |