Web/Express.js

EunRyeong Park·2022년 7월 28일
1
  • 동적 웹 구현 방법
    ① CSR(client side rendering)
    프론트엔드에서 동적인 부분을 대부분 처리하는 방식
    -복잡한 프로젝트 구성, 큰 개발 사이즈
    -API통신 사용, 빠르지만 API호출 완료된 후 페이지 내용 보임
    ② SSR(server side rendering)
    백엔드에서 페이지 대부분의 영역을 처리해서 프론트엔드로 전달
    -쉬운 구성, 작은 개발 사이즈
    -로딩이 느려 보이고 페이지 깜빡임

웹 프레임워크

-HTTP 요청 처리
-HTTP 응답 처리
-라우팅(HTTP요청을 분기하는 방법 제공)
-HTML Templating(페이지 뼈대 작성 가능)

Node.js의 웹프레임워크=> Express.js

Express.js의 모든 동작은 app.js객체에 정의됨


Express.js

  • 유연하게 구조 설정 가능
  • 미들웨어를 통해 필요한 기능을 간단하게 추가 가능
  • 동작이 명시적으로 구성->웹프레임워크의 동작방식을 이해하기 좋음

app.js

-> express()로 생성되는 app객체(express.js의 기능을 담은) 확인
1. app.use : middleware를 사용하기위한 함수
2. app.listen() : http서버 생성(=http.createServer)
3. app.locals() : app에서 사용할 공통 상수

라우팅

  • 주소의 일부를 변수처럼 사용
  1. app 라우팅
    -get,post,put,delete

  2. Express.Router
    -> ❗그룹화//라우팅을 모듈화 할 수 있음❗

✅Request Handler : http요청과 응답을 다루는 함수
-> 설정된 라우팅 경로에 해당하는 요청이 들어오면 실행

	①Request객체 : http요청정보를 가진 객체
    
    - req.params
    - req.queries
    - req.body
    - req.get('')
    
    ②Response객체 : http응답을 처리하는 객체(데이터 전송, 응답상태 및 헤더 설정 등)
    
    - res.send()
    - res.json()
    - res.render()
    - res.set()
    - res.status()
    

💥💥💥💥💥💥💥

Express는 app객체를 시작으로 동작이 이루어짐->

app객체나 express.Router를 사용하여 라우팅 구현->

Request Handler를 통해 HTTP요청/ 응답 처리

1개의 댓글

comment-user-thumbnail
2022년 7월 30일

노드가 뭔지 익스프레스가 뭔지, 갈수록 헷갈렸는데 정리해주셔서 감사해요! 노드새끼 정복하고 만다~!~!🫶

답글 달기

관련 채용 정보