java - 是否有与 SignalR 等效的 Java?

标签 java websocket signalr

我有一个非常简单的问题,但我在 Google 上找不到任何有趣的东西。

是否存在与 SignalR (.NET) 等效的 Java 版本?

SignalR 是一个 .NET 框架,它为旧浏览器实现了 Websockets。

真的很感谢你。

最佳答案

看来Atmosphere可以是你正在寻找的。

来自github描述:

The Atmosphere Framework contains client and server side components for building Asynchronous Web Application.

我还没试过,但是this表示它支持主要的 JEE 服务器(JBoss、Tomcat、Glassfish、Jetty)和所有主要的浏览器和传输(WebSockets、SSE、Long-Polling 等)。

2014 年 6 月 4 日更新: “Java 等效于 SignalR”还有另一个值得注意的替代方案。从 4.0 版开始,Spring Framework 附带 support for WebSockets以及对 SockJS 的服务器端支持。这意味着它也支持WebSocket-Fallback,与浏览器端一起使用sockjs-client图书馆。 正如 Spring 文档所说:

WebSocket is not supported in all browsers yet and may be precluded by restrictive network proxies. This is why Spring provides fallback options that emulate the WebSocket API as close as possible based on the SockJS protocol [...] On the browser side, applications can use the sockjs-client that emulates the W3C WebSocket API and communicates with the server to select the best transport option depending on the browser it’s running in.

到目前为止,我仍然不知道 Java 框架中是否支持诸如 SignalR Hubs(涉及 JavaScript 代码生成)之类的东西,但另一方面,我认为您可以轻松模仿类似 SignalR 的 PersistentConnection为旧版浏览器提供完整的后备支持。

此外,由于JSR 356又名用于 WebSocket 的 Java API,我认为所谓的“主流”Java Web 框架将提供对 Websockets+Fallback 的开箱即用支持只是一个时间问题,特别是考虑到所有主要的 servlet 容器(如 Tomcat 和 Jetty)和 JEE 7 服务器(Glassfish、Wildfly)已经支持 JSR 356。

关于java - 是否有与 SignalR 等效的 Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17338652/

相关文章:

Java检测音频文件(mp3)

go - 如何向 gorilla websocket 的 CheckOrigin 添加可信来源?

java - 为什么当我开始一项新 Activity 时我的背景消失了?

java - 在不同的 columnName 中使用两个 LIKE?

java - for循环中意外的绘制顺序

java - 如何获取现有的 websocket 实例

javascript - WebSocket 关闭并出现协议(protocol)错误 1002

c# - 将 Autofac 与 SignalR 结合使用时出现范围错误

asp.net - Signal-R 如何适应 IIS 激活模型?

javascript - Signalr 在服务器中托管 javascript 客户端的客户端脚本