참고
https://github.com/teaming-project-team3
https://blog.ewq.kr/37?category=909856
https://github.com/for2gles/realtime-chat
https://github.com/zerocho/sleact
https://github.com/liamks/Delivery.js
https://www.youtube.com/watch?v=3V1DBEUoImo&list=PLBHzlq7ILbsaL1sZxJIxrc4ofSPAMSTzr&index=5 // broadcasting & room 사용
https://velog.io/@1yongs_/Redis-Clustering-NestJS-Chat-App // redis 사용
https://docs.nestjs.com/websockets/interceptors
https://blog.codemagic.io/flutter-ui-socket/ // 플러터 연동
https://dev.to/carminezacc/user-authentication-jwt-authorization-with-flutter-and-node-176l // 플러터 연동
웹소켓으로 전송할 수 있는 데이터 종류
자바스크립트에서 바이너리 데이터는 ArrayBuffer와 Blob 클래스로 표시되고,
텍스트는 문자열로 표시된다.
일반 텍스트와 바이너리 포멧을 사용하면, 거의 모든 유형의 HTML5 미디어를 전송/ 디코딩할 수 있다.
웹소켓은 한 번에 하나의 바이너리 포멧만을 지원하며, 아래와 같이 반드시 명시적으로 선언해야 한다.