res 객체도 살펴봅시다.
• res.app: req.app처럼 res 객체를 통해 app 객체에 접근할 수 있습니다.
• res.cookie(키, 값, 옵션): 쿠키를 설정하는 메서드입니다.
• res.clearCookie(키, 값, 옵션): 쿠키를 제거하는 메서드입니다.
• res.end(): 데이터 없이 응답을 보냅니다.
• res.json(JSON): JSON 형식의 응답을 보냅니다.
• res.locals: 하나의 요청 안에서 미들웨어 간에 데이터를 전달하고 싶을 때 사용하는 객체입니다.
• res.redirect(주소): 리다이렉트할 주소와 함께 응답을 보냅니다.
• res.render(뷰, 데이터): 다음 절에서 다룰 템플릿 엔진을 렌더링해서 응답할 때 사용하는 메서드입니다.
• res.send(데이터): 데이터와 함께 응답을 보냅니다. 데이터는 문자열일 수도, HTML일 수도, 버퍼일 수도, 객체나 배열일 수도 있습니다.
• res.sendFile(경로): 경로에 위치한 파일을 응답합니다.
• res.set(헤더, 값): 응답의 헤더를 설정합니다.
• res.status(코드): 응답 시의 HTTP 상태 코드를 지정합니다.
req나 res 객체의 메서드는 다음과 같이 메서드 체이닝(method chaining)을 지원하는 경우가 많습니다. 메서드 체이닝을 활용하면 코드양을 줄일 수 있습니다.
res .status(201) .cookie('test', 'test') .redirect('/admin');