问题标签 [signalr-client]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1410 浏览

signalr - SignalR 核心控制台客户端未收到通知

我环顾了一些类似的问题,并没有解决这个问题。我的 .NET 核心 Web API 项目中有一个简单的集线器。这是集线器:

这是界面:

这是来自控制器的代码:

最后是控制台客户端代码:

这是带有映射的 Web 应用程序的启动:

我不断收到此错误:System.IO.IOException:“在握手开始之前服务器已断开连接。” 我一定会在这里遗漏一些东西。

更新:
打开日志并收到此错误:

dbug:Microsoft.AspNetCore.Http.Connections.Client.HttpConnection[8] 在“ http://localhost:61514/notifications ”处与服务器建立连接。dbug:Microsoft.AspNetCore.Http.Connections.Client.HttpConnection[9] 与服务器建立连接“BdROAEEQnGUeDYAW5EspRA”。dbug:Microsoft.AspNetCore.Http.Connections.Client.HttpConnection[7] 使用 Url 启动传输“ServerSentEvents”:http://localhost:61514/notifications. 信息:Microsoft.AspNetCore.Http.Connections.Client.Internal.ServerSentEventsTransport[1] 开始传输。传输方式:文本。dbug:Microsoft.AspNetCore.Http.Connections.Client.Internal.ServerSentEventsTransport[3] 开始接收循环。dbug:Microsoft.AspNetCore.Http.Connections.Client.Internal.ServerSentEventsTransport[9] 收到 30 个字节。解析 SSE 帧。dbug:Microsoft.AspNetCore.Http.Connections.Client.Internal.ServerSentEventsTransport[4] 接收循环已停止。dbug:Microsoft.AspNetCore.Http.Connections.Client.Internal.ServerSentEventsTransport[100] 开始发送循环。dbug:Microsoft.AspNetCore.Http.Connections.Client.HttpConnection[18] 传输“ServerSentEvents”已启动。调试:Microsoft.AspNetCore.Http.Connections.Client.Internal。ServerSentEventsTransport[102] 发送循环已取消。dbug:Microsoft.AspNetCore.Http.Connections.Client.Internal.ServerSentEventsTransport[101] 发送循环已停止。未处理的异常。信息:Microsoft.AspNetCore.Http.Connections.Client.HttpConnection[3] HttpConnection 已启动。信息:Microsoft.AspNetCore.SignalR.Client.HubConnection[24] 使用 HubProtocol 'json v1'。System.IO.IOException:在握手开始之前服务器断开连接。在 Microsoft.AspNetCore.SignalR.Client.HubConnection.StartAsyncCore(CancellationToken cancelToken) 在 Microsoft.AspNetCore.SignalR.Client.HubConnection 的 Microsoft.AspNetCore.SignalR.Client.HubConnection.HandshakeAsync(ConnectionState startingConnectionState, CancellationToken cancelToken)。

0 投票
0 回答
983 浏览

amazon-web-services - 移动到应用程序负载均衡器后面的 AWS fargate 后 SignalR 握手问题

移动到应用程序负载均衡器后面的 AWS fargate 后 SignalR 握手问题。

在我使用 nginx 在 EC2 实例上运行之前,在遵循此建议后运行良好; ASP.NET Core 中的 SignalR 在 Nginx 后面。但由于某些原因,我们不得不将其移至 AWS fargate 并使用 Aws 应用程序负载均衡器 (ALB)。现在我们无法让 signalR 启动并运行。该服务有一个工作正常的 REST api。

而且我仍然可以切换回旧的基础设施,这就像一个魅力。

从颤振应用程序我得到这个:

和这个:

它看起来类似于我们在 nginx 中解决的问题,但我认为 AWS ALB 应该默认处理它。如果我在本地运行该服务,它工作正常。

我们用:

  • 使用这个 signalR 客户端颤振:https ://github.com/soernt/signalr_client
  • API:目标框架:
  • netcoreapp2.1 Docker:mcr.microsoft.com/dotnet/core/aspnet:2.1-alpine
  • Microsoft.AspNetCore.SignalR.Protocols.MessagePack:1.0.0

提前致谢

0 投票
1 回答
299 浏览

javascript - 如何访问 SignalR 核心中的 invocationId?

我正在 Azure 上使用 SignalR Core 创建一个应用程序。现在我需要将调用的请求与返回的值和回调进行匹配。我想使用invocationId来确保将执行的方法是最新调用的请求。为了避免在附加的图像中发生。

getData在短时间内多次调用时,我想确保使用正确的响应。所以invocationId需要忽略 8 的响应,只使用invocationId9 的响应。 在此处输入图像描述

0 投票
0 回答
130 浏览

c# - SignalR:空集线器脚本文件

我正在尝试将 SignalR 用于实时通知,但我遇到了问题。

生成的脚本中心文件为空。我在客户端遇到错误:

jquery.signalR-2.4.1.min.js:9 未捕获的错误:SignalR:加载集线器时出错。
确保您的集线器引用正确,例如 .

在调试调用时,我看到,脚本内容的程序集创建得很好(图 1、2)。

但是当我尝试将其转换为二进制(var bytes = Encoding.UTF8.GetBytes(data))时,ResponseExtensions class (Microsoft.AspNet.SignalR.Hosting)结果为空(图 3)。

在随附的屏幕截图中,您可以看到内容和转换后的内容。

图 1

图 2

图 3

有谁知道会出现什么问题?先感谢您

0 投票
2 回答
537 浏览

c# - 如何获得 HubProxy.Invoke 调用的响应?

所以我有一个 C#client调用methodSignalR 的 a hub,集线器将在其中返回 a DateTime

但是我现在遇到的行为是client卡在HubProxy.Invoke最后记录以下内容:

Possible deadlock detected. A callback registered with "HubProxy.On" or "Connection.Received" has been executing for at least 10 seconds.

这是的代码client

这是的代码Hub

我已经尝试过替换await hubProxy.Invoke<DateTime>("GetCurrentServerTime")hubProxy.Invoke<DateTime>("GetCurrentServerTime").Result但它的行为相同......

有谁知道我做错了什么,导致致命警告被记录?

EDIT1:return DateTime.Now;如果我在中放置断点hub,则断点被命中,并且hub将其响应发送到client.

0 投票
1 回答
358 浏览

java - 在 Android SignalR 客户端上接收带有自定义对象的消息,数据未反序列化

我在 ASP.NET Core 5 Web 服务器上使用 SignalR 进行 Android 设备管理。我可以从设备(D2C)发送消息,并接收带有String参数的消息(C2D)。但是我无法接收带有自定义对象参数的消息,处理程序将所有对象成员都接收为空。我开发了一个 WPF 客户端,它很好地接收了这个对象。

我正在关注ASP.NET Core SignalR Java 客户端文档。它解释了如何在 Java部分的传递类信息中使用自定义对象。

在 build.gradle 文件中:

这是我在 Android 项目中的自定义类:

如果这有帮助,这是我在 ASP.NET Core 项目中的自定义类(如果我使用字段而不是属性 WPF 客户端不起作用,我不知道为什么):

这是我的 android 客户端类:

这是我在每个处理程序中得到的输出:

你知道我做错了什么吗?

0 投票
0 回答
25 浏览

asp.net-web-api - 回调信号中心服务器

我在 asp.net 核心 webapi 中有一个名为 GetSummarizedText 的端点。此端点将内容发送到信号器客户端。客户端处理此内容并应将数据作为对 httprequest 的响应发回。所以要做到这一点,我必须让 httprequest 线程等待 30 秒才能得到结果。这不是一个好的解决方案,因为线程会休眠 30 秒。

有没有更好的方法将结果发送到集线器服务器上的回调函数?

0 投票
1 回答
217 浏览

c# - 使用 Xamarin 和 SignalR 时连接被拒绝

您好,我最近在使用 SignalR 和 Xamarin 时遇到了一些问题。我使用了一个 Asp.net 核心 Web 应用程序和一个使用 SignalR 客户端包的 xamarin 表单。每当我尝试连接时,我都会收到错误“连接被拒绝”,我已经将我的代码与其他做同样事情的教程进行了比较,我相信它们匹配但我仍然遇到问题。这是我的代码:

Xamarin 客户端代码

这是我在服务器上的启动页面代码:

我的中心页面代码:

我的 launchSettings 我尝试使用 iisSettigns 和 FleetSocketServer 调试它,同时更改 WithURL 中的 URl,但仍然给我同样的错误

谢谢!

0 投票
2 回答
79 浏览

c# - 带有 SignalR 的 ExcelDNA RTD

我正在尝试将 ExcelDNA RTD 与 ASP.NET SignalR 服务器连接起来。每当服务器上发生更改时,都会将消息推送到连接的客户端,并且我的 ExcelDna 加载项正在获取新消息,但未更新注册的功能。

我的 RTD 服务器:

我的功能

当我调试时,我可以看到topic.UpdateValue(m);每当从服务器推送消息时都会被击中,但不是GetSignalRMessages

我是否遗漏了将主题更改传播到函数的任何内容?

谢谢!

约瑟夫

0 投票
0 回答
38 浏览

c++ - Petalinux 上的 SignalR-Client-Cpp 引发“SSL 握手错误”异常

我有一个带有我创建的 Petalinux 构建的Xilinx ZCU106,其中包括一个使用SignalR-Client-Cpp的应用程序。尽管尝试了很多事情,但在调用start()我的signalr::hub_connection.

此应用程序在其他 Linux 系统(如 Ubuntu)上运行良好。我认为问题在于很难找到ca-certificates.crt通常位于/usr/local/ssl更普通的 Linux 发行版(如 Ubuntu)上的文件。在 Petalinux 构建中,它位于此处:/etc/ssl/certs/ca-certificates.crt.

我能说的最好的,我需要做这样的事情来配置signalr::hub_connection使用证书文件:

然而,即使这样做,传入的异常也会start()被填充,说明“SSL 握手错误”。

我已经尝试过一些其他的事情,比如在给它之前使用web::credentials和设置它们,但我得到了相同的结果。signalr_client_confighub_connection

我不知道如何让它发挥作用,我希望其他人可能有一些想法?