ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1-4. Node.js 튜토리얼 - 웹서버 및 application 시작하기
    Nodejs 2020. 3. 2. 22:57

    1. 어떤 웹서버를 만들것 인가? 생각해 보기 

     

    간단하지만 리얼하게 생각해 봅시다.

     

    • 사용자는 웹 브라우저로 우리의 웹 애플리케이션을 이용할 수 있다.
    • 사용자가 http://domain/start를 요청하면 파일 업로드 폼이 들어있는 웰컴페이지를 볼 수 있어야 한다.
    • 업로드할 이미지 파일을 선택해서 폼으로 전송하면, 해당 이미지는 http://domain/upload로 업로드 되어야 하며, 업로드가 끝나면 해당 페이지에 표시된다.

    이런 기본적인 전제 조건이 필요 하며 우리는 이것을 통하여 다음 과 같은 어플리케이션 의 스택을 살펴 보게 됩니다. 

    어떻게 구현 할 것 인가? 

     

    • 우리는 웹페이지를 제공해야 한다. 따라서 HTTP 서버가 필요하다.
    • 우리는 서버는 어떤 URL 요청(request)을 받았는지에 따라 다르게 응답해야 한다. 따라서, 요청과 요청을 처리할 핸들러들을 연결짓기 위한 라우터(router) 같은 것이 필요하다.
    • 서버로 도착한 요청들, 그리고 라우터를 이용해서 라우팅된 요청들을 만족시키기 위해서 실제적인 요청 핸들러(request handlers)가 필요하다.
    • 라우터는 아마도 들어오는 어떠한 POST 데이터들도 다룰 수 있어야 한다. 그리고 해당 데이터를 다루기 편한 형태로 만들어 request handler 들에게 넘겨야 한다. 따라서 요청 데이터 핸들링(request data handling)이 필요하다.
    • URL에 대한 요청을 다루는 것뿐 아니라 URL이 요청되었을 때 내용을 표시할 필요도 있다. 이 말은 즉, request handler 들이 사용자 브라우저로 콘텐트를 보내기 위해 사용할 수 있는 뷰 로직(view logic)이 필요하다는 이야기다.
    • 마지막이지만 중요한 것으로는, 사용자가 이미지들을 업로드 할 수 있어야 하니까, 세부 사항을 다루는 업로드 핸들링(upload handling)이 필요할 것이다.

    위와 같이 6가지의 개발해야 할 항목들을 도출 해 낼수 있습니다. 

     

     

    위의 개발 항목을 Node.js를 사용 하여 우리는 애플리케이션뿐 아니라, HTTP 서버를 통째로 구현할 것입니다. 

     

    사실 따지고보면, 우리의 웹 애플리케이션과 웹 서버는 기본적으로 동일합니다.

     

     

    다음 강의에는  애플리케이션 스택의 첫 번째 파트인 HTTP 서버 구현을 시작해 보겠습니다. 

Designed by Tistory.