Request,Response

hipAn·2022년 10월 2일
0

끄적끄적 성장일지

목록 보기
16/30

req,res

이건 꼭 잘 숙지를 하고있어야할 내용이다.

처음에 각 리퀘스트 뒤의 용어들에 따라 불러온 값들이

어떻게 다른건지 왜 다른건지 이해를 못한 상태에서 서버를 짜려다 밤새도록 에러창과 구글링으로 시간을 보냈던 기억이있다.

req와 res에 대해서 공부를 하고나서야 비로소 삽질이 덜해졌다..

req.params
req.body
req.query
이 세가지는 특히나 확실히 이해하자

처음에는 body만을 이용해서 직접 값을 입력하고 사용하였는데
params나 query를 사용하니 간단하게 도메인값만으로도 선택적 조회가 매우 간편하게 이루어졌다.

req 객체

req.app : req 객체를 통해 app 객체에 접근할 수 있습니다.
req.ip: 요청한 Client의 ip 주소가 담겨 있습니다.

- req.body:

Request를 호출할 때 body로 전달된 정보가 담긴 객체입니다.
body-parser Middleware를 이용하여야 해당 객체를 사용할 수 있습니다. (app.use(express.json());)

body parser 첨부자료 :https://velog.io/@yejinh/express-%EB%AF%B8%EB%93%A4%EC%9B%A8%EC%96%B4-bodyParser-%EB%AA%A8%EB%93%88

- req.params:

라우터 매개 변수에 대한 정보가 담긴 객체입니다.
router.get("/:id")
localhost:3000/helloworld
파람스같은경우는 위와같은 형태로 요청이 들어오게되면
{id : 'helloworld'} 의 형태로 반환된다.

- req.query:

Request를 호출할 때 쿼리 스트링으로 전달된 정보가 담긴 객체입니다.
localhost:3000/?queryKey=value
쿼리파람스에는 ? 뒤로 오는 값들이 객체로 반환된다 위와같은 주소로 요청이들어오게되면 req.query 값은 {queryKey:'value'} 의 형태로 반환된다.

  • req.cookies: Request를 호출할 때 Cookie 정보가 담긴 객체입니다.
    • cookie-parser Middleware를 이용하여야 해당 객체를 사용할 수 있습니다.
  • req.get(Header): 헤더에 저장된 값을 가져오고 싶을 때 사용합니다.

res 객체

  • res.app : res 객체를 통해 app 객체에 접근할 수 있습니다.
  • res.status(코드) : Response에 HTTP 상태 코드를 지정합니다.
  • res.send(데이터) : 데이터를 포함하여 Response를 전달합니다.
  • res.json(JSON) : JSON 형식으로 Response를 전달합니다.
  • res.end() : 데이터 없이 Response를 전달합니다.
  • res.direct(주소) : 리다이렉트할 주소와 함께 Response를 전달합니다.
  • res.cookie(Key, Value, Option) : 쿠키를 설정할 때 사용합니다.
  • res.clearCookie(Key, Value, Option) : 쿠키를 제거할 때 사용합니다.
profile
아 나도 이랬을 때가 있었는데..

0개의 댓글