studyHard
article thumbnail

요청 객체(request)

req.app req 객체를 통한 app 객체로의 접근. req.app.get('port')
req.cookies cookie-parser 미들웨어가 만드는 요청의 쿠키를 해석한 객체
req.signedCookies 서명된 쿠키들은 req.cookies 대신 이곳에 담긴다
req.get(헤더 이름) 헤더의 값을 가져온다. req.get('Contet-type')
req.body body-parser 미들웨어가 만드는 요청의 본문을 해석한 객체.
POST 방식으로 넘어오는 데이터를 담는다
req.params 라우트 매개변수에 대한 정보가 담긴다
req.query GET 방식으로 넘어오는 데이터, 쿼리스트링의 정보가 담긴다
req.route 현재 라우트에 관한 정보. 디버깅용
req.headers HTTP의 Header 정보를 가지고 있다
req.accepts([types]) 클라이언트가 해당하는 타입을 받을 수 있나 확인하는 메서드
req.ip 요청의 ip 주소를 담는다
req.path 클라이언트가 요청한 경로. 프로토콜, 호스트, 포트, 쿼리스트링을 제외한 순수 요청 경로
req.host 요청 호스트 이름을 반환하는 메서드. 보안 목적 사용 X
req.xhr 요청이 ajax 호출로 시작됬다면 true를 반환하는 프로퍼티
req.protocol 현재 요청의 프로토콜(http, https 등)
req.secure 현재 요청이 보안 요청(SSL?) 이면 true를 반환
req.url(req.originalUrl) URL 경로와 쿼리 스트링을 반환
req.acceptedLanguages 클라이언트가 선호하는 자연어 목록을 반환

 

응답 객체(response)

res.app res 객체롤 통해 app 객체에 접근. res.app.get('')
res.set(헤더, 값) / res.setHeader(헤더, 값) 응답의 헤더를 설정
res.status(코드) / res.sendStatus(코드) 응답 시의 HTTP 상태 코드를 지정
res.type(type) Contents-Type 헤더를 설정할 수 있는 메서드
res.cookie(키, 값, 옵션) 쿠키를 응답에 설정하는 메서드(cookie-parser 패키지 필요)
res.clearCookie(키, 값, 옵션) 쿠키를 응답에서 제거하는 메서드
res.end() 데이터 없이 응답을 보낸다
res.json(JSON) JSON 형식의 응답을 보낸다
res.redirect(주소) redirect할 주소와 함께 응답을 보낸다
res.locals / res.render(뷰, 테이터) res.locals는 뷰를 렌더링하는 기본 콘텍스트를 포함하는 객체
res.render는 jade와 같은 템플릿 엔진을 사용하여 뷰를 렌더링
res.send(body), res.send(status, body) 클라이언트에 응답을 보냄, 상태 코드는 옵션
기본 콘텐츠 타입은 text/html 이므로 text/plain을 보내려면
res.set('Context-Type', 'text/plain')을 먼저 호출 해야한다
res.sendFile(경로) 경로에 위치한 파일을 응답
res.attachment([filename]),
res.download(path, [filename], [callback])
클라이언트에게 파일을 표시하지 말고 다운로드 받으라고 전송함. filename을 주면 파일 이름이 명시되며, res.attachment는 헤더만 설정하므로 다운로드를 위한 node 코드가 따로 필요함

 

profile

studyHard

@언젠간코딩잘함

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!