NestJS를 활용한 자바스크립트 웹 소켓 서버 구축 방법
이번 글에서는 NestJS를 사용하여 자바스크립트 웹 소켓 서버를 구축하는 방법에 대해 알아보겠습니다.
목차
NestJS란?
NestJS는 Express를 기반으로 하는 서버 사이드 프레임워크입니다.
npm
으로 NestJS를 설치하여 사용할 수 있습니다.
웹 소켓 프로토콜
웹 소켓 프로토콜은 서버와 클라이언트 사이에 지속적인 양방향 통신을 제공합니다. 이를 통해 실시간 데이터 전송이 가능해집니다.
NestJS 웹 소켓 모듈 설치
NestJS에서 웹 소켓을 사용하기 위해서는 @nestjs/websockets
모듈을 설치해야 합니다.
npm install @nestjs/websockets
웹 소켓 서버 구축
웹 소켓 서버를 구축하기 위해 @WebSocketGateway()
데코레이터를 사용합니다.
먼저, 웹 소켓 서버에 대한 설정과 연결을 위한 포트 번호를 지정해야 합니다.
import { WebSocketGateway, WebSocketServer } from "@nestjs/websockets";
import { Server } from "socket.io";
@WebSocketGateway(3000)
export class WebSocketServerGateway {
@WebSocketServer()
server: Server;
// 서버 로직 작성
}
웹 소켓 이벤트 처리
웹 소켓 서버에서 발생하는 이벤트를 처리하기 위해 각 이벤트에 맞는 데코레이터를 사용합니다.
@WebSocketGateway(3000)
export class WebSocketServerGateway {
@WebSocketServer()
server: Server;
@SubscribeMessage('message')
handleMessage(client: Socket, payload: any): string {
this.server.emit('message', payload); // 모든 클라이언트에게 메시지 전달
return '메시지 전송 완료';
}
}
종합
이제 NestJS를 사용하여 자바스크립트 웹 소켓 서버를 구축하는 방법에 대해 알아보았습니다. 웹 소켓 프로토콜을 사용하여 실시간 양방향 통신을 구현할 수 있습니다. NestJS를 활용하면 간단하고 효율적인 서버 개발이 가능하니 많이 활용해보시기 바랍니다.
참고 자료
해시태그 #NestJS #웹소켓