-
Socket.ioWeb/nodeJS 2020. 1. 7. 19:21
✍︎ Install
➜ npm i socket.io
✍︎ Import (Entry file)
import socketIO from "socket.io";
✍︎ Back end Js file & Front end Js file 모두 html/pug에 연결되어 있어야 한다.
Socket은 페이지가 없고 연결만 있다. 이벤트를 가지고 있는데 이벤트는 어떤 것이든 될 수 있다. 서버, 클라이언트와 유저는 서로 이벤트를 보내고 받을 수 있다. 양방향통신 Socket은 항상 Server의 움직임을 듣고 있다. Server가 꺼지면 계속해서 연결을 시도한다. 실시간통신 Socket have IDs. User마다 ID를 부여하여 구분한다. 백엔드에서 ("hello")이벤트를 emit(발생)시키고,
프론트엔드에서 그 내용("Somebody said hello")을 적어둘 수 있음.(Listening)
➜ 클라이언트에게 보내는 이벤트
프론트엔드에서 ("hello server")이벤트를 emit(발생)시키고,
백엔드에서 그 내용("The client said hello")을 적어둘 수 있음.(Listening)
➜ 클라이언트가 서버에 보내는 이벤트
socket.emit : 클라이언트에게 이벤트를 보냄/
socket.broadcast.emit : 방금 join한 유저(just connected)를 제외한 모든 클라이언트에게 이벤트 보냄.
클라이언트가 Server에 연결될 때마다 Server는 connection이라는 이벤트를 받는다.
이 연결은 User가 Off Line이 되거나 Server가 연결을 끊지 않는 한 유지된다.
'Web > nodeJS' 카테고리의 다른 글
"NPM error" after installing "yarn" (0) 2020.01.19 Realtime Drawing Game 만들기 - Guess my mind (0) 2020.01.07 Nodemon 설치 (0) 2020.01.07 iterm으로 프로젝트 생성 (0) 2020.01.05 Express Core: Routing (0) 2019.11.27