소켓프로그래밍?
- 프로그램을 만들다보면 항상 연결돼있어야 하는 서비스들이 생기기마련이다 가령 채팅서버를 만든다던지 계속적으로 클라이언트와 서버가 연결된 상태에서 서로 양방향으로 통신을 하는 방식이 필요한 프로그램의 솔루션 중 하나가 소켓이다.
NestJs에서 소켓프로그래밍하기
nestjs의 공식문서
문서를 보면 게이트웨이는 기본적으로 지원되는 socket.io와 ws가 지원되고 DI가 가능한 클래스라고 명시 돼 있습니다.
모듈 다운
npm i --save @nestjs/websockets @nestjs/platform-socket.io
cli
nest g ga [파일명]
네임스페이스
- 흔히 웹을 이용할때 서비스를 활용할 때 마다 어떠한 공간을 할당받게 된다.
그런것 처럼 소켓통신을 할때도 socketio를 사용할때 namespace의 이름을 정해주지 않으면 브라우져에서 socket의 id를 찾지 못한다.