TIL. 70 미들웨어 용어들

조윤식·2022년 9월 14일
0

app.use() : 미들웨어는 이 메서드를 이용해서 타고 다닙니다.

app.ser()과의 차이점은 app.ser()은 전역으로 사용된다.

next() : 다음 미들웨어로 가는 역할을 합니다.

next(error) : 오류 처리 미들웨어로 가는 역할을 합니다.

next('route') : 많이 사용하지는 않지만 next()로 같은 라우터에서 분기처리를 할 때 사용합니다.

HTTP 요청 메서드의 종류와 내용

종류 주소 응답

GET / index.html 파일을 송신합니다.
GET /join Join.html 파일을 송신합니다.
POST /user 사용자를 등록합니다.
PUT /user/user_id user_id를 가진 사용자의 정보를 수정합니다.
DELETE /user/user_id user_id를 가진 사용자의 정보를 삭제합니다.

app.use ('/경로', 미들웨어);
app.get ('/경로', 미들웨어);
app.post ('/경로', 미들웨어);
app.put ('/경로', 미들웨어);
app.delete ('/경로', 미들웨어);

응답을 위한 함수

app.get, app.use는 요청을 위한 함수이고 응답을 위한 함수도 몇 가지 있는데, 지금까지 send()와 sendFile()을 이용해서 직접 html를 요소를 넣기도 하고 html 파일을 통째로 보내주기도 했습니다. 그 외에도 render(), json() 등도 있습니다.

  • res.send() : 문자열로 응답합니다.
  • res.json() : json 객체로 응답합니다.
  • res.render() : Jaje, Pug와 같은 템플릿을 렌더링하여 응답합니다.
  • res.sendFile() : 파일로 응답합니다.

express.json, express.urlencoded

클라이언트에서 post, put 요청 시 들어온 정보를 가진 req.body에 접근하기 위해 필요한 미들웨어입니다. 요청 정보가 url에 들어온 것이 아니라 request body에 들어있는데, 이 값을 읽을 수 있는 구문으로 파싱하고 req.body로 옮겨주는 역할을 하는 것이 express.json, express.urlended입니다.

app.use(express.json());
app.use(express.urlencoded({ extended: true }));

profile
Slow and steady wins the race

0개의 댓글