尝试使用WebSockets。来自客户端的连接无缘无故关闭。我已将其追踪到这一行:
System.out.println("Will output");
UserSession session = gameServer.getConnectedUser(message.getReceptor());
System.out.println("Will not output");
session.getConnection().send(JSONEncoder.create(message));
相反,它会立即跳转到WebSocket服务器的onClose(),尽管我对行UserSession session = gameServer.getConnectedUser(message.getReceptor());
然后我去了onClose()并添加了这个:
System.out.println("Code: " + code + " reason: " + reason + " remote: " + remote);
Token token = getConnectedUser(conn).getToken();
scheduler.deleteFor(token);
Logger.logInfo("User " + token.toString() + " has quit");
“用户xyz已退出”将被输出,但第一个System.out.println()将不会被打印。既不是原因,也不是代码或其他任何东西......什么可能导致这种联系接近,为什么没有给出理由或代码?
谢谢!