使用 WebSockets 时,是否需要编写服务器代码?换句话说,我的客户端应用程序中的 JavaScript 是否需要连接到专门的服务器,或者我现有的 Apache 服务器是否可以支持这一点?
6 回答
服务器必须支持 Web 套接字。在 HTTP 中第一次握手之后,服务器和客户端打开一个套接字连接。服务器必须能够理解并接受此握手。
在我的上一个项目中,我们使用最新的 Jetty 版本非常成功地运行了 Web 套接字连接。
2014 年 2 月 27 日:现在我也在 .net 下使用 XSockets.net 实现 websockets,它的工作原理就像一个魅力,你甚至不需要网络服务器(自托管)。ASP.NET 的 WebSocket 实现也很好用。
当然你需要一个 WebSocket 服务器。但是有许多不同语言的免费 websocket 服务器,如 Java 中的 jWebSocket 和 .NET 中的SuperWebSocket,您可以直接使用它们。
目前正在为 Apache 的谷歌代码开发一些插件......
根据定义,像普通套接字一样的 websocket 是客户端-服务器,所以是的,你需要一个服务器。然而,还有一个等待 Apache 插件的替代方法。
我正在使用托管服务器http://www.achex.ca。它是免费的,你有关于如何使用服务器的 javascript 教程。websockets 开发的良好开端。
服务器基本上是一个消息路由器,您可以连接到它并将其用作所有 websocket 客户端的交汇点。
简短回答:是的,您需要一个专门的服务器,Apache 不附带 websockets。
或者
,请访问www.achex.ca。
在这种情况下,服务器的角色出现在:
在 HTML 5 中,WebSocket 就像 fone(2-way comm.)而不是对讲机。http 协议升级为 websocket 协议。(wss:// from ws://)
服务器应该能够打开双工通道,因此同意双工通信。
请通过此链接:http ://www.html5rocks.com/en/tutorials/websockets/basics/
如果使用 php,请查看 RATCHET。
谢谢。
Perl Mojolicious 服务器支持 Web 套接字,并且实现可能只有几行代码。
Node.js 有几个 WebSocket 库,但最新、最强大、最支持最新规范的细节各不相同,因此请谨慎选择。
Apache Active MQ 以及它实现的 stomp 协议也值得一看。