我想创建一个HTML5 MMORPG游戏。为此,我需要客户端和服务器之间的低延迟通信。由于选择HTML5或客户端技术,我很清楚,我将用JavaScript开发游戏。我发现有一个名为socket.io
的引擎,可以让客户端和服务器之间进行通信。带有HTML5客户端的Java WebSocket服务器 - 是否需要socket.io?
但我不想用JavaScript编写服务器。其中一个原因是我不希望代码公开,以防止作弊。我的选择是为服务器使用C++或Java。在我看来,使用Java更容易(我更熟悉C#,我想这会帮助我)。
我现在的问题是结合Java WebSocket(服务器)和socket.io
(客户端)。但是...我用一个HTML5客户端(没有socket.io!)创建了一个带有Java WebSocket的测试应用程序,并且通信正常。所以我有几个问题:
我需要socket.io吗?如果是,为什么?使用由Java WebSocket默认项目创建的默认代码之间有什么区别?
如果我需要socket.io,如何将socket.io与Java WebSockets结合?我找到了一篇关于它的文章(https://oneminutedistraction.wordpress.com/2013/08/12/marrying-socket-io-client-with-java-ee-7s-websocket/),但没有奏效。我真的不知道为什么。我发现,socket.io默认尝试连接到
webservice-url/socket.io
,你可以改变它。我改变了它,并在JavaScript控制台中出现了更多错误。但是我没有得到建立连接的事件触发器。所以我觉得,这是行不通的。(可选问题)我可以只使用
socket.io
并使我的服务器代码安全吗?所以没有人可以阅读代码?我猜不会?或者有没有其他方法可以解决我的问题?我仍然在寻找最适合我的情况的技术。