我是否需要服务器才能使用HTML5的WebSockets?

问题描述 投票:78回答:6

使用WebSockets时,我是否需要编写服务器代码? 换句话说,我的客户端应用程序中的JavaScript是否需要连接到专用服务器,或者我现有的Apache服务器是否能够支持这一点?

html5 websocket
6个回答
20
投票

服务器必须支持Web套接字。 在HTTP中进行第一次握手后,服务器和客户端打开套接字连接。 服务器必须能够理解并接受此握手。

在我的上一个项目中,我们使用最后一个Jetty版本运行非常成功的Web套接字连接。

27/02/2014:现在我也在.net下使用XSockets.net实现websockets并且像魅力一样工作,你甚至不需要Web服务器(自托管)。 ASP.NET的WebSocket实现也很有用。


7
投票

是的,您需要编写服务器代码。

我推荐另一个基于php: ratchet的 Web套接字服务器。 这个链接是在棘轮和sockJS之间对webSocket服务器进行基准测试。

完整的客户端和服务器端代码列表以及浏览器支持请查看此链接


5
投票

目前正在为Apache的谷歌代码开发一些插件...

根据定义,像普通套接字这样的websockets是客户端服务器所以是的,你需要一个服务器。 但是,有一种替代等待Apache插件的方法。

我正在使用托管服务器http://www.achex.ca 。 它是免费的,你有关于如何使用服务器的javascript教程。 websockets开发的良好开端。

服务器基本上是一个消息路由器,您可以连接到它并将其用作所有websocket客户端的会合点。

简答是的 ,你需要一个专门的服务器,Apache没有websockets。
要么
另一种选择 ,请访问www.achex.ca


5
投票

当然,您需要一个WebSocket服务器。 但是有许多不同语言的免费websocket服务器,比如Java中的jWebSocket和.NET中的SuperWebSocket ,你可以直接使用它们。


2
投票

在这种情况下,服务器的作用来自:

在HTML 5中,WebSocket就像一个fone(2-way comm。)而不是walky-talky。 http协议升级为websocket协议。 (wss:// from ws://) SERVER应该能够打开双工通道,因此可以通过双工通信进行AGREE。

请浏览此链接: http//www.html5rocks.com/en/tutorials/websockets/basics/

如果使用PHP请查看RATCHET。

谢谢。


1
投票

Perl Mojolicious服务器支持Web套接字,实现只需几行。

Node.js有几个WebSocket库,但最新,最大,最支持最新规范的细节各不相同,所以请谨慎选择。

Apache Active MQ以及它实现的stomp协议也值得一看。

© www.soinside.com 2019 - 2024. All rights reserved.