小编Cas*_*aly的帖子

使用 IHubContext 实例化 SignalR Hub 对象

SignalR 集线器的一大用途似乎是向所有其他客户端显示一个客户端的操作。我希望使用 SignalR 的目的是,当我的服务器端代码中发生某个事件时,我想实例化一个集线器对象并调用其方法之一来与所有客户端进行通信。如果您看到我之前的文章(Route To Take With SqlDependency OnChange),我想在 SqlDependency 的 OnChange 方法中执行此操作。经过研究,我发现有些人谈论使用 IHubContext 对象,尽管我还没有找到很多实例化和实际向客户端发送数据的示例。

这是否可以做到(如果可能的话,使用 IHubContext 向所有客户端发送数据可能会是什么样子),如果不可能,有什么方法可以绕过实例化这样的集线器?

c# asp.net sqldependency signalr signalr-hub

7
推荐指数
1
解决办法
9258
查看次数

缺少 NuGet 包,但“包已安装”

我在网上看到很多人提出了同样的问题,并且尝试了几乎所有方法来解决这个问题,但没有任何效果。我将 Visual Studio 解决方案复制到计算机上的另一个位置,现在当我尝试构建它时,我得到了臭名昭著的...

此项目引用了该计算机上缺少的 NuGet 包。使用 NuGet Package Restore 下载它们。有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=322105

当然,我已经启用了包恢复,尝试手动恢复它们(在这种情况下,我收到一条消息说“所有包都已安装,没有什么可以恢复。”),我尝试删除所有包,然后让项目恢复它们,我读了很多关于问题可能是 .csproj 文件的内容,可能是这样吗?如果是这样,我如何访问该文件?看起来非常基本,但由于某种原因我无法在我的解决方案中找到它。

visual-studio nuget nuget-package nuget-package-restore packages.config

6
推荐指数
1
解决办法
4546
查看次数

SignalR IIS With React - “服务器返回握手错误:握手已取消。”

我正在开发一个由 IIS 10 托管的 .Net Core (3.1) Web 应用程序。当我尝试在本地主机上使用 SignalR 时,我能够完全正常连接并从后端接收消息,但是在将其发布到 IIS 后,我收到错误:“服务器返回握手错误:握手已取消。” 在 Chrome 控制台上的客户端日志中,我收到消息:“信息:SSE 连接到http://myserver.com/MyApplication/output”,然后出现上述错误(您可能认为这意味着我连接成功)。 ..

我看过其他帖子,人们建议我必须在 IIS 上启用 webSockets,并且我已经检查过我的网站是否已启用此功能。

我还看到人们建议在创建连接时尝试在 withUrl 函数中使用 longPolling 参数,但这也没有帮助。

我还在 web.config 文件中添加了 SignalR 事件日志跟踪侦听器,我得到的唯一可能与此问题相关的警告是,我从 .NET 运行时收到一条警告,内容为“无法确定 for 的 https 端口”重定向。” 我不确定这意味着什么,或者它是否与 SignalR 有关,但由于这似乎也涉及中间件,因此它可能很重要。

我认为可能相关的一件事是,我的站点只是此服务器上托管的多个站点之一,因此当我在本地运行时,我可以使用以下命令连接到 SignalR:

hubConnection = new signalR.HubConnectionBuilder().withUrl("/output").build();

但由于这个网站在我的服务器上部署的方式,我必须使用这个:

hubConnection = new signalR.HubConnectionBuilder().withUrl("/MyApplication/output").build();

当我部署网站时,否则我会收到 404 错误...

那里会有什么问题吗?我注意到在检查本地主机上的网络请求时,与套接字连接的 URL 是“wss://localhost:44315/output?id=...”,并且我得到“状态代码:101 切换协议”,但是部署后,使用的 url 是“http://myserver.com/MyApplication/output?id=...”,并且在收到顶部描述的错误之前收到“200 OK”。为什么在本地主机上使用 wss,但部署时客户端会请求 http?

iis signalr reactjs asp.net-core

6
推荐指数
1
解决办法
1万
查看次数