Tech Trail

[Web] Node.js로 서버 개발 시작하기: HTTP 모듈 입문 + os 모듈을 활용하여 시스템 운영 체제 확인 본문

Coding/Web

[Web] Node.js로 서버 개발 시작하기: HTTP 모듈 입문 + os 모듈을 활용하여 시스템 운영 체제 확인

_밍지_ 2023. 11. 17. 10:34
728x90
반응형
SMALL

 

Node.js는 JavaScript를 실행할 수 있는 환경으로, 웹 서버와 같은 네트워크 애플리케이션을 만들 때 유용한 다양한 모듈과 기능을 제공합니다.

이를 위해 문서화된 Node.js 공식 문서(Manual & Documentation)를 사용할 수 있습니다.

위 링크를 타고 docs 에 들어오면 모듈들에 대한 설명이 나오는데, 아래는 제공된 코드 조각과 그에 대한 설명입니다.

const http = require('http');

const hostname = '127.0.0.1';
const port = 1337;

http.createServer((req, res) => {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('Hello World\n');
}).listen(port, hostname, () => {
    console.log(`Server running at http://${hostname}:${port}/`);
});

(1) 코드에서 http 모듈을 가져옵니다.

const http = require('http');

http 모듈은 Node.js에서 웹 서버를 만들고 관리하는 데 사용됩니다.

require 함수를 사용하여 모듈을 불러옵니다.

참고) Node.js에서 http 모듈을 사용하려면 'http'라는 변수를 선언합니다.

이 변수는 사실 'http' 모듈을 가리키는 상수(const)입니다.

이렇게 선언된 상수는 한 번 할당되면 그다음에는 해당 값을 변경할 수 없습니다.

즉, 'http' 변수에 한 번 모듈을 할당하면 이후에는 'http' 변수를 다른 값으로 덮어쓸 수 없습니다.

(2) 웹 서버를 설정할 호스트 네임(hostname)과 포트(port)를 정의합니다.

const hostname = '127.0.0.1';
const port = 1337;
  • 호스트 네임은 서버가 실행될 주소를 나타냅니다.
  • 포트는 서버가 리스닝 할 포트 번호를 지정합니다.

(3) http.createServer() 메소드를 사용하여 웹 서버를 생성하고, 요청(req)과 응답(res)을 처리하는 콜백 함수를 정의합니다.

http.createServer((req, res) => {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end('Hello World\n');
})
  • createServer 메소드는 HTTP 서버를 생성하며, 요청에 대한 콜백 함수를 전달합니다. 이 콜백 함수는 요청을 처리하고 응답을 반환하는 역할을 합니다.
  • 위의 코드에서는 'Hello World'라는 간단한 텍스트를 응답으로 반환하고, 상태 코드 200과 'Content-Type' 헤더를 설정합니다.

(4) listen 메소드를 사용하여 서버를 특정 호스트와 포트에서 실행합니다.

.listen(port, hostname, () => {
    console.log(`Server running at http://${hostname}:${port}/`);
});
  • listen 메소드는 서버가 리스닝을 시작하도록 하는 메소드입니다. 호스트 네임과 포트를 전달하여 서버가 해당 주소에서 요청을 수신하도록 설정합니다. 콜백 함수는 서버가 시작될 때 실행되며, 시작 메시지를 출력합니다.

이러한 코드 예제를 통해 Node.js에서 HTTP 모듈을 사용하여 간단한 웹 서버를 만들 수 있습니다.

Node.js는 기본적으로 애플리케이션을 만드는데 필요한 부품들을 제공하여 웹 개발 및 다른 네트워크 기반 애플리케이션을 빠르고 쉽게 개발할 수 있도록 도와줍니다. (제일 대표적인 것이 http!)

이 부품을 어떻게 사용하면 되는지에 대해 공식 문서를 참조하고 이해하는 것이 중요하며, 이 문서는 Node.js 부품들의 사용 방법과 API에 대한 설명을 포함하고 있습니다.

 

 

[Web] Node.js를 활용한 디렉토리 생성부터 스크립트 실행과 디버깅까지 (tistory.com)

 

[Web] Node.js를 활용한 디렉토리 생성부터 스크립트 실행과 디버깅까지

(1) 디렉토리 및 파일 생성: C 드라이브에 dev > js > server_side_javascript 폴더를 만듭니다. hello.js 파일을 해당 폴더에 만듭니다. 혹시 헷갈리실까 봐 ~ ​ ​ ​ (2) hello.js 스크립트 내용: hello.js 파일에

techtrail.tistory.com

위 링크를 함께 참고하세요.

 

 

 

Node.js와 os 모듈을 활용하여 시스템 운영 체제 확인하기

이제 Node.js를 활용하여 현재 시스템의 운영 체제(OS)를 확인하는 방법을 다루겠습니다.

우선, Node.js에서 운영 체제 정보에 접근하려면 'os' 모듈을 사용해야 합니다.

"os.platform() 메소드는 현재 실행 중인 운영 체제(Operating System)의 플랫폼(Platform) 정보를 반환하는 함수입니다. "라고 적혀있네요.

Node.js 스크립트를 작성하여 현재 운영 체제 플랫폼을 확인해 봅시다.

// module.js 파일

// 'os' 모듈 가져오기
var os = require('os');

// 현재 운영 체제 플랫폼 확인
console.log(os.platform());

위의 코드를 작성하여 'os' 모듈을 가져와서 os.platform() 메소드를 사용하여 현재 운영 체제 플랫폼을 확인할 수 있습니다.

이제 cmd 창에서 다음 명령을 실행하여 스크립트를 실행해 봅니다.

node module.js

저는 윈도우라 win32로 잘 뜨네요.

os.platform() 메소드가 반환할 수 있는 가능한 값들은 다음과 같습니다:

  1. 'darwin': macOS 운영 체제를 나타냅니다.
  2. 'freebsd': FreeBSD 운영 체제를 나타냅니다.
  3. 'linux': Linux 운영 체제를 나타냅니다.
  4. 'sunos': SunOS 또는 Solaris 운영 체제를 나타냅니다.
  5. 'win32': Windows 운영 체제를 나타냅니다.

즉, os.platform()은 현재 사용 중인 컴퓨터의 운영 체제가 무엇인지를 판별하여 해당 플랫폼 이름을 문자열로 반환합니다. 이 정보를 활용하여 Node.js 애플리케이션 내에서 특정 운영 체제에 따른 작업을 수행하거나 설정을 조절할 수 있습니다.

728x90
반응형
LIST