express 사용하기 기초 - 라우팅, 미들웨어 (작성중)

YS_Study.log·2022년 3월 11일
0

express는 웹 및 모바일 애플리케이션을 위한 일련의 강력한 기능을 제공하는 간결하고 유연한 Node.js 웹 애플리케이션 프레임워크입니다.

express 라우트 메소드

express 라우트 메소드는 HTTP 요청 메소드와 동일하며(HTTP에서 파생된 것), express 인스턴스(객체)에 연결됩니다.

  • http 요청메소드 : get, post, put, delete ...

미들웨어 함수

미들웨어 함수는 미들웨어 함수는 세개의 인자를 갖는다. (필수 인자는 2개) 요청에 대한 정보를 확인한 다음에 응답객체로 클라이언트에게 데이터를 전달해준다.

  • 콜백함수의 인자(methood 두 번째 인자)
    - 첫 번째 인자 : request(요청) 객체
    클라이언트의 요청을 담고 있다.
    - 두 번째 인자 : response(응답) 객체
    요청에 대한 응답(데이터, 서버의 상태, 에러 등)을 담고 있다.
    - 세 번째 인자 : next
    미들웨어 함수에서 요청-응답으로 마무리 하지않는경우 사용한다. next() 함수를 호출하여 앱(인스턴스) 내의 다음 미들웨어 함수를 호출한다.

res 반응도 하지 않고 next 함수를 실행하지 않을 경우? 다음 미들웨어 함수와 연결되지 않고 서버가 중지 된 상태가 된다. 그러므로 응답 또는 next() 다음 미들웨어를 실행하는 함수를 꼭 사용해야한다.

기본 라우팅 형식

app.methood(path, callback(request,response,next))

  • app : express 인스턴스
  • methood : HTTP 요청메소드 (함수)
    - 첫 번째 인자 : path / url (해당 경로)
    - 두 번째 인자 : 미들웨어함수/콜백함수
    미들웨어(콜백함수)를 원하는 경로, http메소드에 전달한다.

각 라우트는 하나 이상의 핸들러(콜백) 함수를 인자로 갖고, 이러한 함수는 라우트(경로)가 일치할 때 실행된다.

라우트, 라우팅 설명

ex) '/' 루트경로(라우터)에 get 요청메소드를 보내서 경로에 있는 데이터를 읽어온다. 이 과정에서 콜백함수 실행 => req 요청한 정보를 res 응답객체에 전달하고 res 응답객체는 받아았다는 메세지를 보낸다.

app.get('/', function(req, res) {
  res.send('hello');
});

출처
express공식 홈

profile
느리지만 조금씩 공부하는 중 입니다. 현재 1년 6개월차 신입입니다 ><!

0개의 댓글