๋ค์ด๊ฐ๋ฉฐ
์น์์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ณ ๋ฐ๊ธฐ ์ํด์๋ ์ด๋ค ์์ผ๋ก ์ ์กํ๊ณ ์ด๋ค ๊ฒฝ๋ก(End-point)์ ์ ๋ฌํ ์ง๋ฅผ ์ค์ํ๊ฒ ๋ณธ๋ค.
๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ณ ๋ฐ๋ ๋ฐฉ์์ผ๋ก๋ GET, POST ๋ฑ์ HTTP ๋ฉ์๋๊ฐ ์๊ณ , ๊ด๋ จํด์ REST API๋ผ๋ ๊ฐ๋ ์ด ์๋ค.
๊ทธ๋ณด๋ค ์ด๋ฒ ๊ธ์์๋ ๊ฒฝ๋ก์ ๋ํด์, ๊ทธ ์ค์์๋ Query Parameter์ Path Variable์ ๋ํด์ ์ ๋ฆฌํด๋ณด๋ ค ํ๋ค.
Query Parameter (Query String)
์ ์ด๋ฏธ์ง๋ ์ฐ๋ฆฌ๊ฐ ํํ๊ฒ ๋ณด๋ URL์ ๊ตฌ์กฐ์ด๋ค.
์ฌ๊ธฐ์ ?
์ดํ๋ถํฐ ์์๋๋ Parameters๋ผ๋ ๋ถ๋ถ์ด ๋ฐ๋ก Query Parameter์ด๋ค.
ํํ Query String, ์ฟผ๋ฆฌ ์คํธ๋ง์ด๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค. ์ฟผ๋ฆฌ ํ๋ผ๋ฏธํฐ์ ์ฟผ๋ฆฌ ์คํธ๋ง์ ๊ฐ์ ํํ!
Query String์ key
์ value
๋ก ์์ ์ด๋ฃฌ ๋ฌธ์ ํํ์ด๋ฉฐ & ๋ก ์ฐ๊ฒฐํ๋ค.
์ ๊ตฌ์กฐ๋ก ๋ฐ์ง๋ฉด 2๊ฐ์ key, value ์์ด parameter์ ๋ค์ด๊ฐ ์๋ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ ๋ด๊ฒจ์ง Query String์ ์น์๋ฒ๋ก ์ ๋ฌ๋๋ค.
์๋์ ๊ฐ์ ๊ฒฝ์ฐ๋ q๋ผ๋ key์ abc๋ฅผ ๋ด์ ์ ๋ฌํ๋ค๊ณ ๋ณด๋ฉด ๋๊ฒ ๋ค.
/search?q=abc
Path Variable
Path Variable์ ๊ฒฝ๋ก๋ฅผ ๋ณ์๋ก ์ฌ์ฉํ๋ค.
๊ฒ์๊ธ์ ์กฐํํ๋ค๊ณ ๊ฐ์ ํ๋ฉด, ํด๋น ๊ฒ์๊ธ์ id๋ฅผ ์๋ฒ๋ก ๋๊ฒจ์ฃผ์ด์ผ๋ง ์กฐํํ ์ ์์ ๊ฒ์ด๋ค.
/boards/100
์์ ๊ฐ์ ํํ๋ก, id ๊ฐ์ ํน์ ์ธ๋ฑ์ค์ ๋ํ ์กฐํ๋ฅผ ํ๋ ๊ฒฝ์ฐ Path Variable์ ์ฌ์ฉํ๋ค.
๊ฐ๊ฐ ์ธ์ ์ฐ๋ ๊ฒ์ด ์ข์๊น?
๊ทธ๋ผ Query Parameter์ Path Variable์ ์ฌ์ฉํ๊ธฐ ์ ์ ํ ๋๋ ์ธ์ ์ผ๊น?
์๋์ ๊ฐ์ด ์ ๋ฆฌํด๋ณผ ์ ์๊ฒ ๋ค.
- Path Variable : id๋ฅผ ์ด๋ค ๋ฆฌ์์ค๋ฅผ ์๋ณํ๊ณ ์ถ์ ๋ ๋ ์ ์ !
/users // ๋ชจ๋ ์ฌ์ฉ์ ๋ชฉ๋ก ๊ฐ์ ธ์ค๊ธฐ
/users/123 // ํ์ ๋ฒํธ ํน์ id๊ฐ 123์ธ ์ฌ์ฉ์ ์ ๋ณด ๊ฐ์ ธ์ค๊ธฐ
- Query Paramater : ํํฐ๋ง์ ํ๊ฑฐ๋ ์ ๋ ฌ์ ํ๋ ๊ฒฝ์ฐ ์ฌ์ฉํ๋ ๊ฒ์ด ์ด์์ !
/posts // ๋ชจ๋ ๊ฒ์๊ธ ๋ชฉ๋ก ๊ฐ์ ธ์ค๊ธฐ
/posts?user=abc // ์์ฑ์๊ฐ abc์ธ ๊ฒ์๊ธ๋ง ๊ฐ์ ธ์ค๊ธฐ
ํญ์ ๋ชจ๋ ๊ฒฝ๋ก์ Query String์ด๋ Path Variable์ด ํ์ํ ๊ฒ์ ์๋๋ค.
ํ์์ ๋ฐ๋ผ, ๊ฒฝ์ฐ์ ๋ง๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ์ฌ์ฉํด๋ด์ผ๊ฒ ๋ค!
'๐ Studying > Web' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
CORS๊ฐ ๋ญ๋ฐ.. ์๋ฌ ๋์ฒ๋ ์ด๋ป๊ฒ ํด์ผ.. ๐ฅน (0) | 2022.10.12 |
---|---|
์นํฉ ๋น๋๋ถํฐ ๋ฐฐํฌ๊น์ง ํ๋ํ ์ฝ์ง ๊ณผ์ (0) | 2022.09.14 |
๋ธ๋ผ์ฐ์ ์ ๋ ๋๋ง์ ์ด๋ค ๊ณผ์ ์ ๊ฑฐ์น ๊น? (0) | 2022.07.08 |
MPA,SPA ๋ถํฐ CSR, SSR ๊น์ง (0) | 2022.07.05 |
Comment