Node

Express.js 의 req,res객체

한우종 2024. 9. 4. 21:00
req
  • req객체
  • req.app
    req객체를 통해 Express.js의 app객체에 접근 가능
  • req.ip
    요청한 클라인언트의 ip주소가 담겨있음
  • req.body★
    request를 호출할때 body로 전달된 정보가 담긴 객체
    express.json()middleware를 이용하여야 해당 객체 사용가능
  • req.params★
    라우터 매개변수(Path Params)에 대한 정보가 담긴 객체
  • req.query★
    request를 호출할때 쿼리 스트링으로 전단된 정보가 담긴 객체
  • req.cookies
    request를 호출할때 쿠키정보가 담긴객체
    cookie-parser미들웨어를 이용하여야 해당 객체 사용가능
  • req.get
    헤더에 저장된 값을 가져오고 싶을때 사용

 

 

Path Variable 이라고도 불리우는 이것은 라우트 주소에서 사용되는 특수한 패턴중 하나이다.
URL의 일부분으로 언제든지 변결될 수 있는 값을 나타내기위해 사용한다.

Get/api/test/:testId에 요청을 보낼경우
:testId 이부분이 경로변수 (Path params)다 이는 req.params를 통해 사용할 수 있고 해당 데이터를 params변수에 할당하여 그중 testId만을 따로 추출하여 사용할 수 있다.

API의 주소가 /test 라면 그 위에 있는 :testId라는 값을 추가해서 요청시 testid의 값을 받아올 수 있다.
이 값을 API 내에서 req.params.testId를통해 testid파라미터 값을 얻을 수 있다.

res
  • res객체
  • res.app
    res객체를 통해 Express.js의 app객체에 접근 가능
  • res.status(코드)★
    response에 HTTP상태코드를 지정
  • res.send(데이터)★
    데이터를 포함하여 response를 전달한다
    ex:res.send("hello")
  • res.json(json)★
    JSON형식으로 response를 전달한다.
    ex:res.json({message : "hello"})
  • res.end()
    데이터 없이 response를 전달한다.
  • res.redirect(주소)
    리다이렉트할 주소와 함께 response를 전달한다.
    ex: res.redirect("https://naver.com")
  • res.cookie(key,value,Option)
    쿠키 설정시 사용
  • res.clearCookie(key,value,Option)
    쿠키 제거시 사용