【问题标题】:How to connect a java client to SignalR Hub using only websockets?如何仅使用 websocket 将 Java 客户端连接到 SignalR Hub?
【发布时间】:2017-10-13 00:37:15
【问题描述】:

我需要从我的 Java 桌面应用程序访问与 SignalR Hub 一起运行的 websocket 服务器。

  • a library 就是这样做的,但它已经死了。有很多问题和拉取请求,自 2015 年以来一直没有更新。
  • 我还找到了another library,但据我所知,它仅适用于 Android 项目。
  • 我发现 a SO question 表示可以通过一些变通方法直接与 SignalR 服务器(标准 websocket 调用)对话,但给定的链接已失效。

当我尝试使用 websocket 直接访问服务器时,HTTP 握手失败(我得到的是 HTTP 200 而不是 101)。

谁能帮忙?

【问题讨论】:

    标签: java websocket signalr signalr-hub java-websocket


    【解决方案1】:

    您将无法仅使用裸 webSocket 连接到 SignalR 2.x。原因是启动连接需要一些 HTTP 请求,这些请求必须以特定顺序发送并包含特定内容。我在blog post 中描述了 SignalR 协议。阅读这篇文章后,您将了解为什么存在 SignalR 2.x 的专用客户端。

    话虽如此 - SignalR for ASP.NET Core 的新版本不再有此协议和要求,并且可以仅使用裸 websockets 连接到服务器。我前段时间创建了一个演示,展示了如何执行此操作 - 您可以找到详细信息 here。我还 started working 提供了集线器层的示例,但需要完成它。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-22
    • 1970-01-01
    • 2020-06-30
    • 1970-01-01
    • 1970-01-01
    • 2014-04-17
    • 1970-01-01
    相关资源
    最近更新 更多