웹 서버는 웹애플리케이션에 사용자가 접근 가능하도록 사이트의 모든 정보 (파일들)를 담고 있습니다. 해당 정보요청과 요청에 대한 응답은 HTTP(S)로 많이 이루어지는데요. 오늘은 Node.js에 탑재된 모듈인 'http'를 사용하여 웹 서버를 만들어보겠습니다.
목차
노드제이에스 설치하기
NPM
npm은 자바스크립트에서 활용 가능한 기능을 구현한 코드 라이브러리(패키지)입니다. 자바스크립트를 위한 라이브러리인 만큼 세계에서 가장 큰 규모를 자랑합니다. 오픈소스로 누구나 패키지
jin-co.tistory.com
프로젝트 생성
먼저 npm 패키지를 실행하기 위해 아래 명령어를 실행합니다.
npm init
설정할 때 아래 그림처럼 물어보는 게 많은데 아래와 같이 옵션을 추가하면 자동으로 모든 설정이 완료됩니다 (이후 package.json파일에서 수정가능).
npm init -y
서버코드가 들어갈 .js 파일을 생성합니다 (주로 server.js, app.js라는 파일명을 많이 사용합니다).
서버 만들기
http 패키지를 가져오고
const http = require('http')
서버 생성 후 포트를 지정합니다.
const http = require('http')
const server = http.createServer(function(req, res) {
if(req.url === '/') {
res.end('server')
}
})
server.listen(3000)
서버구동하기
서버를 구동하는 방법은 노드제이에스 커맨드를 활용하는 방법부터 노드몬 등 패키지를 활용하는 방법까지 다양한 방법이 존재합니다.
노드제이에스 커맨드
Node.js를 서버 작동 커맨드를 실행하면
node index.js
활성화된 서버확인이 가능합니다.
노드몬 사용하기
노드몬
통상 개발환경에서 서버 작업 시 변경사항이 반영되려면 서버의 재 구동이 필요합니다. 노드몬은 npm 라이브러리 중 하나로 변경된 사항이 저장될 때마다 변경된 사항을 자동으로 반영해 주는
jin-co.tistory.com
이상으로 http 모듈을 사용하여 Node.js 서버를 만드는 방법을 살펴보았습니다.
참고
Node.js HTTP Module (w3schools.com)
Node.js HTTP Module
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
www.w3schools.com
HTTP | Node.js v19.6.1 Documentation (nodejs.org)
HTTP | Node.js v19.6.1 Documentation
HTTP# Source Code: lib/http.js To use the HTTP server and client one must require('node:http'). The HTTP interfaces in Node.js are designed to support many features of the protocol which have been traditionally difficult to use. In particular, large, possi
nodejs.org
'백엔드 > 노드제이에스' 카테고리의 다른 글
파일업로드 (0) | 2023.05.22 |
---|---|
노드제이에스? (8) | 2023.02.12 |
노드제이에스 서버 만들기 (익스프레스) (0) | 2023.02.12 |
몽고디비 (MongoDB) 와 연결하기 (0) | 2023.01.23 |
노드제이에스 - 앵귤러 서버 API 배포하기 (Render) (0) | 2023.01.22 |