동일한 사용자 스크립트가 설치된 플레이어간에 데이터를 보낼 수 있도록 온라인 브라우저 게임에서 새 소켓 이벤트 처리기를 만들려고합니다.클라이언트 쪽에서 소켓 방출 추가
게임은 여기 socket.io 사용하고 내가 지금까지 한 일이다 :이 같은 사용자 측 socket.on 처리기를 추가 : 내가 연결되어있는 두 선수에 이런 짓을
game.socket.on("hello", function() { console.log("hello there") })
나는이 작업을 수행 할 때 같은 게임에 있지만 : 개의 발광을 보내
game.socket.emit("hello")
만 플레이어는 hello there
는 로그 아웃.
내 생각에 서버 측에는 hello
이벤트를 발생시키는 처리기가 없습니다. 서버 측 코드에 액세스하지 않고 추가 할 수있는 방법이 있습니까? 아니면이를 피하고 다른 플레이어에게 직접 데이터를 전송할 수 있습니까?
코드의 문맥을 크게 표시해야합니다. 'game.socket.emit ("hello")'는 하나의 소켓 끝점으로 만 메시지를 보냅니다. 끝점이 서버이고 서버가 다른 사용자에게 메시지를 보내려면 서버에 코드를 추가해야 해당 메시지를 수신 한 다음 다른 메시지가 수신되면 다른 플레이어에게 보내야합니다. socket.io는 클라이언트 - 서버 연결입니다. 한 클라이언트에서 socket.io (또는 websocket)의 다른 클라이언트로 직접 보낼 수 없습니다. 대신 서버로 보내야하고 서버가 다른 클라이언트에 전달해야합니다. – jfriend00
답변 주셔서 감사합니다, 그게 내가 생각한 것입니다 – MarksCode