java - 在 Java SignalR 客户端中未调用 hubProxy.broadcastMessage
问题描述
我在 ASP.net MVC 网站上托管了一个 SignalR 服务器。
我将一个 WinForms 应用程序作为客户端连接到该服务器,并且工作得非常好。
现在我在这段代码的帮助下制作了一个 Java 客户端。这个客户端成功连接到服务器,但是当我从服务器向这个客户端发送任何消息时,它没有收到它。
Java客户端的代码是:
private static void ConnectSignalR() throws InterruptedException, ExecutionException
{
IP = GetExternalAddress();
String ServerURI = "http://localhost:59044";
hubConnection = new HubConnection(ServerURI);
hubProxy = hubConnection.createHubProxy("ChatHub");
SignalRFuture<Void> con = hubConnection.start(new ServerSentEventsTransport(hubConnection.getLogger())); //Or LongPollingTransport
con.get();
Object[] oa = new Object[] {"Win", UUID.randomUUID(), 5, IP};
hubProxy.invoke("Notify", oa);
hubProxy.on("broadcastMessage", new SubscriptionHandler2<String,String>() {
@Override
public void run(String e1,String e2) {
System.out.println(e1.toString());
checkMessage(e1, e2);
}
}, String.class, String.class);
hubConnection.received(new MessageReceivedHandler() {
@Override
public void onMessageReceived(final JsonElement json) {
checkMessage("", json.toString());
}
});
}
所以它永远不会到达广播消息的断点。我可能做错了什么?
解决方案
推荐阅读
- git - Azure DevOps Git 阻止在同一项目上工作
- maven - 如何在 jenkins 管道中更新 pom.xml 而无需开发人员更改他的 pom.xml?
- android - 如何在 Android 中使用 ContentResolver 删除自定义文件夹中的图像/视频?
- docker - dockerignore 即使写得正确也不起作用
- java - 引脚视图光标形状不变
- django - 为什么 django 没有将用户添加到我的表中(我正在使用 postgres)?
- java - Spring Cloud Gateway - 获取 405 方法不允许
- python - QListWidget中字符后的屏蔽文本
- swift - 环境驳回搜索不适用于 macOS SwiftUI
- c - 多客户端 TCP/IP 服务器 - 服务器显示客户端使用相同的端口号断开连接