1
현재 모든 브라우저 양식의 Java 클라이언트 (소켓 io socket.io-netty)에 메시지를 보내려고합니다. 현재는 하나의 브라우저에만 메시지를 보내고 있습니다. 시간. snippent 다음입니다 :netty 용 Java 기반 소켓 io 클라이언트를 사용하여 모든 브라우저에 메시지 보내기
public class IOClientListener implements INSIOHandler {
private INSIOClient ioClient=null;
private final static Logger log=LoggerFactory.getLogger(IOClientListener.class);
@Override
public void OnConnect(INSIOClient client) {
System.out.println("A user connected :: " + client.getSessionID());
client.send("Hey you are connected to myhope.com");
}
@Override
public void OnDisconnect(INSIOClient client) {
System.out.println("A user disconnected :: " + client.getSessionID() + " :: hope it was fun");
}
@Override
public void OnMessage(INSIOClient client, String message) {
System.out.println("A message received:: " + message + " :: hope it was fun");
}
@Override
public void OnShutdown() {
}
public INSIOClient getIOClient(){
return this.ioClient;
}
}
내가이 클라이언트를 사용하여 메시지를 방송하는 방법을 알고 싶어요. 사전 자세한 내용에 대한
에 봐 allClients.write (message)를 작성했지만 "IllegalArgumentException : 지원되지 않는 메시지 유형 : ..."이 표시됩니다. 어떻게 메시지를 보냅니 까? – Ivan
메시지가 채널 버퍼 여야합니다. socket.io에 익숙하지 않습니다. Netty와 같은 처리기의 파이프 라인을 지원할 수도 있습니다. 따라서 광범위한 캐스트 처리기 후에 인코더 처리기를 갖고 인코딩 후 메시지를 보내야합니다. 채널 버퍼 객체에 전달합니다. –