req - 요청객체 / res - 응답객체 / app.use / app.httpMethod()

yunny·2023년 1월 23일
0

westudy

목록 보기
7/15

req - 요청 객체 (Request)

Request 객체에 존재하는 다양한 메소드

req.params : 이름 요청시 넘겨져 온 path 파라미터 담음

req.query : GET 방식으로 넘어오는 query string 파라미터 담음

req.body : POST 방식으로 넘어오는 파라미터 담음

req.headers : HTTP의 Header 정보 담음

req.route : 현재 라우트에 대한 정보 담음

req.ip : 클라이언트의 IP Address 호출

req.path : 클라이언트가 요청한 경로, 프로토콜, 호스트, 포트, 쿼리스트링을 제외한 순수 요청 경로

req.host : 요청 호스트 이름을 반환(간단)

req.protocol : 현재 요청의 프로토콜

res - 응답 객체 (Response)

Response 객체에 존재하는 다양한 메소드

res.status(code) : HTTP 응답코드 설정

res.json(json), res.json(status, json) : 클라이언트에게 JSON 형태의 데이터 보내기

res.send(body), res.send(status, body) : 클라이언트에게 응답을 보내기 +상태 코드(선택)

res.type: Contents-Type 헤더를 설정할 수 있음(간단)

res.sedFile(path, [options], [callbakc]) : path 파일 읽고 해당 내용을 클라이언트에게 전송

app.xxx()

1. app

express가 프레임워크로 기본으로 제공하는 다양한 내부 기능을 담아내기 위해 사용하는 객체
Application의 세 앞글자를 따서 'app'라 부름

app이 가장 먼저 등장하는 시점은 함수 형태의 express 불러오는 순간
= express가 직접 실행되는 시점


const express = require('express'); // --- (1)
const app = express();              // --- (2)

(1)번 코드
require 통해 express 모듈 임포트하여 객체 생성하고 사용하도록

(2)번 코드
express()함수 호출, app이라는 변수에 담기

즉, express()라는 클래스 기능을 app이라는 새로운 변수 안에 담아 객체 형태로 선언


2. app.use()

일종의 미들웨어를 추가하는 함수
매개변수 형태로 들어오는 다양한 함수들을 받아서 app에 middleware로 추가

app.use()의 기본 디폴트 path는 '/'

app.use(cors());
app.use(morgan('combined'));
app.use(express.json());

만약, app.use() 내부 path 부분에 아무것도 없다면, 클라이언트 호출마다 app.use() 매번 호출
cors, morgan, express.json은 서버 환경의 모든 요청에 필히 동작하도록 함

3.app.httpMethod()

외부에서 들어오는 HTTP 네트워크 요청을 라우팅
HTTP 네트워크 요청 : CRUD 기능에 상응하는 세부 HTTP 메소드(GET, POST, PUT, DELETE)

profile
기록하지 않으면 잊어버려요 !

0개의 댓글

관련 채용 정보