问题标签 [azure-signalr]
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.
azure - 是否可以将 Azure SignalR 服务与本地 SignalR 结合使用?
我们正在评估 Azure SignalR 服务以可能取代我们当前的本地 SignalR 服务。我们正在使用.Net Core 2.2.402
我们尝试了以下方法:
并定义路由和集线器如下:
理想情况下,我们希望在同一个 Web App 中同时使用两者,但它似乎只适用于其中一个。
c# - 如何在 Azure Signal R 中向经过身份验证的用户发送通知?
净核心项目。我有 azure AD 身份验证。我有用户上传文件的功能,一旦文件存储在天蓝色存储中,我想通过天蓝色信号 r 通知用户。我已经实现了这个流程,但我只想向上传文件的用户发送通知。目前,如果五个用户正在使用我的应用程序,那么只有一个用户上传了文件,那么我只想向该用户发送通知,而不是向所有经过身份验证的用户发送通知。
这是我的集线器类,在下面的方法中我正在发送通知。
当用户上传文件时,我只想向该用户发送通知,而不是向将使用应用程序的每个人发送通知。这种场景将如何工作我无法理解。当 Web 应用程序启动时,它是否使用唯一的连接 ID 或基于身份验证机制建立与服务器的连接。我完全糊涂了。有人可以帮助我理解这一点吗?任何帮助,将不胜感激。谢谢
angular - 尝试从 Angular App 连接到 asp.net core signalr hub 时出错
我有一个使用 Microsoft.AspNetCore.SignalR 1.1.0 和 Microsoft.Azure.SignalR 的 asp.net core 3.1 应用程序
在启动信号是这样设置的
在安装的角度应用程序中
npm install @aspnet/signalr
我正在像这样开始连接
当应用程序加载我得到错误。
错误:无法启动连接:错误:客户端支持的传输均不受服务器支持。
更新
更新 2
我也尝试了不同版本的 microsoft-signal,但都给了我同样的错误。安装在服务器端的软件包是最近安装的这个“***Common”只是为了检查。不确定是否需要。
更新 2 我删除了 Azure Signalr,只在服务器端使用 Microsoft.AspNetCore.SignalR 1.1.0,在客户端使用 @microsoft/signalr@latest。但它是同样的错误。
c# - asp.net core signalR 自定义身份验证和带有自定义 id 的标记连接
我们正在尝试使用 asp.net core signalR 从服务器更新客户端应用程序。我们的客户端将在首次创建连接时在查询参数中发送 userId 和自定义 Id。在创建连接之前,我们需要检查数据库中的 userId 和自定义 Id 以确保它们是正确的,并且会为无效的 userId&customid 对返回未经授权的响应。稍后我们需要找到通过自定义 Id 搜索的客户端来发送消息。从这里我只能看到 cookie 和承载令牌身份验证。是否有任何手动身份验证和标记连接以进行进一步搜索的方法?
c# - 协商前的 Azure SignalR 服务用户凭据验证
我们正在尝试将 azure signalR 服务与我们的 azure 函数应用程序连接起来。我们在函数应用程序中有一个协商方法,该方法将SignalRConnectionInfo
对象返回给客户端,在此之前,它会调用 signalR 服务。SignalRConnectionInfo
我们希望在调用 Azure signalR 服务并返回对象之前进行数据库调用。我们正在使用Microsoft.Azure.WebJobs.Extensions.SignalRService 1.0.0
,我们的协商功能如下所示
似乎图书馆正在从标题中获取用户 ID 并传递给 signalR 服务。在让库调用 signalR 服务之前,有什么方法可以执行一些代码?
有Microsoft.Azure.WebJobs.Extensions.SignalRService 1.2.0
几种方法可以实现这一点,如下所示。
也通过使用基于类的集线器
我想使用库的 1.0.0 来实现类似的功能。有人可以帮忙吗?
.net-core - 几分钟不活动后 Azure Blazor 应用间歇性错误
我创建了一个 blazor web 应用程序。我已经使用 azure signal r 服务设置了 websocket。我面临 3 个间歇性问题
1.几分钟不活动后,我得到
如果连接未处于“已连接”状态,则无法发送数据。
2.间歇性我收到以下错误
加载资源失败:服务器响应状态为 504(网关超时)
- jsruntime 调用后出现另一个错误
错误:由于错误,电路已关闭。
任何帮助将不胜感激
azure-functions - 将 Microsoft.Azure.WebJobs.Extensions.SignalRService 包添加到 Azure Function 项目会破坏我的依赖注入
我目前正在开发一个 WebApp,其中我有一个与 Azure Cosmos 数据库对话的 Azure Function API 后端。如本文所述,我已将依赖注入添加到我的项目中:https ://docs.microsoft.com/en-us/azure/azure-functions/functions-dotnet-dependency-injection
我的 Startup 类如下所示:
这是我如何在我的函数中使用它的示例:
一切都按预期工作,直到我需要为需要实时数据的特定页面添加 SignalR。在刚刚安装 SignalR 包 Microsoft.Azure.WebJobs.Extensions.SignalRService 之后,我在控制台中注意到了这个错误:
当我尝试访问 API 端点时,我在所有端点上都收到 500 错误,并且在控制台中出现以下错误:
我已将所有软件包更新到最新版本,并尝试重新安装所有软件包,但仍然出现相同的错误。当我删除 SignalR 包时,所有错误都消失了。我已经对此进行了多次测试。
azure - Azure SignalR All.SendAsync 是向所有客户端发送消息,还是仅向具有给定方法名称的客户端发送消息?
问题:为了尽量减少每条消息的费用,我想按方法名称限制消息。根据下图,我需要知道在以下情况下 SignalR 将向哪些客户端发送消息:
1.) 创建集线器“/MyHub”
2.) 3 个用户(在 Angular 客户端上)使用名为“Post_A”的方法向 Hub 注册
3.) 然后 2 个不同的用户使用名为“Post_B”的方法向同一个 Hub 注册
4.) 如果 API 服务器通过 Clients.All.SendAsync("post_B", dto) 发送更新,它只会发送给用户 3 和 4?还是该消息会发送给所有五个用户?
奖金!如果答案是所有消息都发送给所有用户,是否有不使用组的选项?我不认为每次用户查看新帖子(会有数千个帖子)时,组不会产生大量额外开销。
谢谢!
c# - 构造函数中的 Azure SignalR 上下文
有没有办法在 AzureSignalR 进程中获取用户 ID?如下所示,我想获得该用户 ID,如果我不使用 AzureSignalR,我可以通过 HttpContext 获得它,但在 AzureSignalR 的情况下,似乎只有在实际方法本身中我无法获得该 ID,这意味着我无法在我的应用程序中做任何事情因为我需要那个用户 ID