๐Ÿ“š Study/JS, JQuery

[node.js] req.params vs req.body vs req.query

kkh1902 2022. 9. 20. 00:30
728x90
๋ฐ˜์‘ํ˜•

node.js๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋ฉด์„œ ์ฃผ์†Œ๋กœ ๋ฐ›๋Š” params( ๋ผ์šฐํ„ฐ ๋งค๊ฐœ๋ณ€์ˆ˜) ์™€ req.body ๋ฐ์ดํ„ฐ๋“ค์„ ๋‹ด์•„์„œ ๋ณด๋‚ผ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ(์œ ์ €์˜ ์ •๋ณด ๋˜๋Š” ํŒŒ์ผ) ํ‚ค ๊ฐ’์œผ๋กœ ๋ณด๋‚ด๋Š” ๊ฒƒ์€ ์•Œ๊ณ  ์žˆ์—ˆ์œผ๋‚˜ req.query๋ฅผ ์“ฐ๋Š” ์„ ๋ฐฐ๋ฅผ ๋ณด๊ณ  ์ด๊ฑด ๋ชจ๋ฅด๋ฉด ์•ˆ๋  ๊ฒƒ ๊ฐ™์•„์„œ ์ •๋ฆฌ ํ•ฉ๋‹ˆ๋‹ค.

 

req.params

- ๋ผ์šฐํ„ฐ ๋งค๊ฐœ๋ณ€์ˆ˜

 

์˜ˆ๋ฅผ ๋“ค์–ด /:id/:name ๊ฒฝ๋กœ๊ฐ€ ์žˆ์œผ๋ฉด ":id"์†์„ฑ๊ณผ ":name"์†์„ฑ์„ req.params.id, req.params.name์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

www.example.com/post/1/jun ์ผ ๊ฒฝ์šฐ 1๊ณผ jun์„ ๋ฐ›๋Š”๋‹ค. 

req.body

- JSON ๋“ฑ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์„๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. (์ฃผ๋กœ POST๋กœ ์œ ์ €์˜ ์ •๋ณด ๋˜๋Š” ํŒŒ์ผ ์—…๋กœ๋“œ(formdata)๋ฅผ ๋ณด๋ƒˆ์„ ๋•Œ )

์š”์ฒญ ๋ณธ๋ฌธ์— ์ œ์ถœ ๋œ ํ‚ค-๊ฐ’ ๋ฐ์ดํ„ฐ ์Œ์„ ํฌํ•จํ•œ๋‹ค.

 

req.query

- ๊ฒฝ๋กœ์˜ ๊ฐ ์ฟผ๋ฆฌ ๋ฌธ์ž์—ด ๋งค๊ฐœ ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์†์„ฑ์ด ํฌํ•จ ๋œ ๊ฐœ์ฒด๋‹ค. (์ฃผ๋กœ GET ์š”์ฒญ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ)

 

์˜ˆ๋ฅผ ๋“ค์–ด www.example.com/post/1/jun?title=hello! ์ด๋ฉด,

title ๋งค๊ฐœ๋ณ€์ˆ˜(parameter)์˜, hello!์ด๋ผ๋Š” ๊ฐ’(argument)์„ ๊ฐ€์ ธ์˜จ๋‹ค.

์ด์ •๋ฆฌ

  • params๋Š” router ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฐ–๊ณ  ์˜จ๋‹ค.
  • bodys๋Š” post๋กœ ๋ณด๋‚ธ ๊ฐ์ฒด ๋ถ€๋ถ„์„ ๊ฐ–๊ณ  ์˜จ๋‹ค
  • query ๋Š” ? ๋’ท๋ถ€๋ถ„์„ ๊ฐ€์ ธ์˜จ๋‹ค.!!
728x90
๋ฐ˜์‘ํ˜•