在运行 Linux 的 Azure 应用服务上使用 SignalR

问题描述 投票:0回答:1

我正在使用基本 (B1) 托管计划在 Linux 上运行的 Azure 应用服务上托管我的 ASP.NET Core 应用程序(面向 .NET 8)。我的应用程序也使用 SignalR。

我在“设置”>“配置”下没有看到 SignalR 选项。我在某处读到,在 Linux 上,WebSocket 始终处于打开状态,但我的 .NET MAUI 应用程序无法与我的 ASP.NET Core 应用程序建立 SignalR 连接。

有什么想法/建议吗?

azure asp.net-core websocket azure-web-app-service signalr
1个回答
0
投票

以下文档清楚地将 ASP.NET Core SignalR 应用程序发布到 Linux 上的 Azure 应用服务。

我想在这里澄清三点:

  1. Linux 上的所有 Azure 应用服务托管计划,包括免费套餐支持 ASP.NET Core SignalR 和使用 Azure SignalR 服务都不是必需的
  2. Linux 上的 Azure 应用服务上的 WebSockets 似乎默认处于开启状态,这可以解释为什么如果托管计划使用 Linux,WebSockets 设置不会出现在“设置”>“配置”下
  3. 一个要求似乎是打开“会话亲和性”设置。就我而言,它是关闭的,我必须手动将其打开。这可能是它的默认设置

以下 Microsoft 文档提供了有关此内容的详细信息:https://learn.microsoft.com/en-us/aspnet/core/signalr/publish-to-azure-web-app?view=aspnetcore-8.0#configure -azure-app-service 中的应用程序

这是另一个有用的文档,提供了 Linux 上应用服务的常见问题解答:https://learn.microsoft.com/en-us/troubleshoot/azure/app-service/faqs-app-service-linux

© www.soinside.com 2019 - 2024. All rights reserved.