nodejs 를 활용해서 간단한 채팅서버를 구현하고자 한다.
참고로 node.js 는 java script 기반의 서버 사이드 프로그래밍 언어입니다.
웹 개발 시 필수적으로 사용되며 다양한 라이브러리와 모듈을 제공하므로 빠르고 쉽게 개발할 수 있습니다.
설치 방법은 https://nodejs.org/ko/download/ 에 들어가서 자신의 운영체제에 맞는 버전을 선택 후 설치하면 됩니다.
구현하기위해서는 node 프로젝트를 생성해야 하는데 npm init 명령어를 사용해서 프로젝트를 생성할 수 있다.
결론부터 말씀드리면 생성하면 아래 파일이 생긴다.
package.json
index.js
첫번째, npm 를 사용해서 프로젝트를 생성한다.
PS D:\dev\nodejs_project\chat_server> npm init
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help init` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
package name: (chat_server)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)
About to write to D:\dev\nodejs_project\chat_server\package.json:
"name": "chat_server",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
},
"author": "",
"license": "ISC"
}
Is this OK? (yes)
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2024-01-02 오후 2:27 207 package.json
두번째, express 와 ws 패키지를 설치한다.
우리가 만들 채팅 서버는 express 라는 모듈을 사용해서 만듭니다.
express는 node.js 에서 사용하는 웹 프레임워크 중 하나이며, 쉽고 빠르게 웹 애플리케이션을 개발할 수 있습니다.
ws 패키지는 주로 Node.js 환경에서 사용되는 WebSocket 라이브러리를 나타냅니다.
이 패키지는 WebSocket 프로토콜을 통해 서버와 클라이언트 간의 양방향 통신을 지원합니다.
주로 웹 애플리케이션에서 실시간 데이터 전송에 사용되며, 예를 들어 채팅 애플리케이션, 실시간 알림 등에 적합합니다. ws 패키지를 사용하면 간단하게 WebSocket 서버 및 클라이언트를 만들 수 있습니다.
PS D:\dev\nodejs_project\chat_server> npm install express ws
PS D:\dev\nodejs_project\chat_server>
만약, 사내망이라서 아래와 같은 에러를 발견한다면?
PS D:\dev\nodejs_project\chat_server> npm install express ws
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm ERR! code SELF_SIGNED_CERT_IN_CHAIN
npm ERR! errno SELF_SIGNED_CERT_IN_CHAIN
npm ERR! request to https://registry.npmjs.org/express failed, reason: self signed certificate in certificate chain
당황하지 말고 아래 명령어를 실행한다.
PS D:\dev\nodejs_project\chat_server> npm config set strict-ssl false -g
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
package.json 을 확인하면 아래와 같이 내용을 볼 수 있다.
{
"name": "chat_server",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.18.2",
"ws": "^8.16.0"
}
}
여기까지 마치시면 node 프로젝트 세팅은 끝나게 되고요.
다음블로그에서는 실재 node 프로그래밍을 해보겠습니다.
오늘의 티스토리는 여기까지고요.
항상 믿고 봐주셔서 감사합니다.