【发布时间】:2014-01-19 03:01:35
【问题描述】:
我有一个使用 Java 套接字的多人游戏,服务器是标准 Java 应用程序,客户端是运行在网络浏览器中的 Java 小程序。
现在自从上次 Java 的更新(Java 7 更新 51)以来,所有的小程序都需要代码签名,所以我想从小程序转移到 HTML5 中重写客户端。
我一直在研究 socket.io,它看起来很简单,但我找不到任何关于如何在我的服务器中实现它的信息。
我想将服务器保留在 Java 中,因为移植它需要做很多工作,所以我可以在我的服务器上使用任何库来使 java 套接字服务器和套接字之间的通信成为可能.io 客户端,或者最好的方法是什么?我真的需要移植整个服务器吗?
谢谢。
【问题讨论】:
-
一个socket就是一个socket;您根本不必更改服务器。 (除非您在 applet 和服务器之间使用 Java 对象序列化,在这种情况下,您将不得不在服务器端重构您的网络代码而不是这样做,并使用更合适的东西,例如 JSON)。
-
你是对的,一个套接字是一个套接字,但是 socket.io 不能使用 java ServerSocket 开箱即用,你必须实现握手,因为 socket.io 可以制作多种类型的连接,你需要处理所有这些,这就是为什么我正在寻找一些可以帮助我的库,因为我找不到任何关于如何在 java 中创建自己的握手处理程序的信息。
-
Java 中的
ServerSocket绝对没有什么特别之处。它与系统上的底层原生 C 库对话,并创建与任何其他语言的任何其他套接字完全相同的 TCP 套接字。telnet连接当然没有问题,您的网络浏览器也没有问题。
标签: java html sockets applet socket.io