[HTTP/Server] req.params / req.query / req.body

초코침·2023년 4월 11일
0

HTTP/Server

목록 보기
5/6
post-thumbnail

req.params

  • 라우터의 매개변수
  • / 바로 뒤에 오는 것

예시

http://localStorage:1234/posts/100라면, 100이 id params다.

router.get('/:id', (req, res) => {
	const { id } = req.params; // -> req.params.id

	console.log(id); // 100
	console.log(req.params); // { id: '100' }
});

⚠️ 문자열 형태로 받기 때문에, 숫자로 활용하려면 Number 형변환이 필요하다.

참고

velog에서 시리즈를 눌렀을 때 나오는 경로의 TIL부분이 params다.

req.query

  • 경로의 각 쿼리 문자열
  • 조건 처리 용도
  • ? 뒤에 오는 것

예시

http://localStorage:1234/posts?title=JS라면, title=JS가 query다.

router.get('/', (req, res) => {
	const { title } = req.query; // -> req.query.title

	console.log(title); // JS
	console.log(req.query); // { title: 'JS' }
});

참고

velog에서 검색했을 때 나오는 경로의 q=JS 부분이 query다.

req.body

  • 요청의 body 데이터
  • 서버로 전송할 데이터를 담는 부분
  • POST 요청 시 사용

예시

개인 정보를 POST하는 경우

{
	"name": "chococheem",
	"id": "choco123",
	"age": 50
}
router.post('/', (req, res) => {
	const { name, id, age } = req.body;
	
	console.log(name); // chococheem
	console.log(req.body); // { name: 'chococheem', id: 'choco123', age: 50 }
});
profile
블로그 이사중 🚚 (https://sungjihyun.vercel.app)

0개의 댓글