我设置了一个在服务器上运行
Java程序的系统,以及嵌入在客户端浏览器页面中的Java applet,并且通过Java套接字进行通信.我想知道如果我可以从Java applet切换到
HTML5和javascript,使用客户端的WebSocket与服务器上的Java套接字通信.
有没有一种简单的方法来使WebSocket与Java Socket进行通信?
解决方法
Is there a simple way to make a WebSocket communicate with a Java Socket?
从我所理解的,WebSocket由客户端工作,打开端口80连接到服务器端,并向服务器发送变体HTTP 1.1请求以协商WebSocket连接.如果服务器识别到这一点,它将发送一个合适的响应,然后允许静态打开TCP连接用于全双工客户端 – 服务器交互.
看起来可以快速地组合一个仅仅理解WebSocket协议而不是完整的HTTP的服务器端.但是,我认为您最好关注现有的WebSocket实现,包括嵌入在HTTP服务器/协议栈中的WebSocket实现.
This Wikipedia page比较了许多WebSocket实现,并且应该帮助您决定要使用哪个服务器端实现.
但是要直接回答您的文字问题,WebSocket客户端只能连接到一个WebSocket感知的服务器;即可以执行初始协商的那个. (在客户端,您可以从裸机Socket开始实现,但是您需要在安装阶段实现所有的“HTTP东西”.)