微软服务器快速入门,Azure SignalR 服务无服务器快速入门 - C# | Microsoft Docs

您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.

快速入门:使用 C# 通过 Azure Functions 和 SignalR 服务创建聊天室

09/25/2020

本文内容

使用 Azure SignalR 服务可以轻松地将实时功能添加到应用程序。 Azure Functions 是一个无服务器平台,可让你在不管理任何基础结构的情况下运行代码。 本快速入门介绍了如何使用 SignalR 服务和 Functions 构建无服务器的实时聊天应用程序。

先决条件

如果尚未安装 Visual Studio 2019,可以下载并使用 免费 的 Visual Studio 2019 Community Edition。 在安装 Visual Studio 的过程中,请确保启用“Azure 开发”。

也可以使用 Azure Functions Core Tools (v2)、.NET Core SDK 以及你喜欢的代码编辑器在命令行(macOS、Windows 或 Linux)上运行本教程。

如果还没有 Azure 订阅,可以在开始前创建一个免费帐户。

遇到问题? 尝试使用故障排除指南或通知我们。

登录 Azure

使用 Azure 帐户登录到 https://portal.azure.com/ 的 Azure 门户。

遇到问题? 尝试使用故障排除指南或通知我们。

创建 Azure SignalR 服务实例

你的应用程序将连接到 Azure 中的 SignalR 服务实例。

选择 Azure 门户左上角的“新建”按钮。 在“新建”屏幕中,在搜索框中键入“SignalR 服务” ,然后按 Enter。

041affac77020d8a67f5f164fff08658.png

从搜索结果中选择“SignalR 服务” ,然后选择“创建” 。

输入以下设置。

设置

建议的值

说明

资源名称

全局唯一名称

用于标识新的 SignalR 服务实例的名称。 有效的字符是 a-z、0-9 和 -。

订阅

订阅

在其下创建此新 SignalR 服务实例的订阅。

myResourceGroup

要在其中创建 SignalR 服务实例的新资源组的名称。

位置

美国西部

选择你附近的区域。

定价层

免费

免费试用 Azure SignalR 服务。

单位计数

不适用

单位计数指定 SignalR 服务实例可以接受的连接数。 它只能在标准层中配置。

服务模式

无服务器

用于 Azure Functions 或 REST API。

2b404d787d2ff2ec0703f01fdab8e4b3.png

选择“创建” 以开始部署 SignalR 服务实例。

部署该实例后,在门户中打开它并找到其“设置”页。 仅当通过 Azure Functions 绑定或 REST API 使用 Azure SignalR 服务时,才将“服务模式”设置更改为“无服务器” 。 否则,将其保留在“经典” 或“默认” 中。

遇到问题? 尝试使用故障排除指南或通知我们。

克隆示例应用程序

在部署该服务时,让我们切换到使用代码。 克隆来自 GitHub 的示例应用,设置 SignalR 服务连接字符串,并在本地运行该应用程序。

打开 git 终端窗口。 切换到要克隆示例项目的文件夹。

运行下列命令,克隆示例存储库。 此命令在计算机上创建示例应用程序的副本。

git clone https://github.com/Azure-Samples/signalr-service-quickstart-serverless-chat.git

遇到问题? 尝试使用故障排除指南或通知我们。

配置和运行 Azure 函数应用

启动 Visual Studio(或其他代码编辑器),并打开所克隆存储库的 src/chat/csharp 文件夹中的解决方案。

在打开 Azure门户的浏览器中,通过在门户顶部的搜索框中搜索先前部署的 SignalR 服务实例的名称,确认该实例已成功创建。 选择该实例以将其打开。

ba934009e0d30de437b0bc040842c2a4.png

选择“密钥”以查看 SignalR 服务实例的连接字符串。

选择并复制主连接字符串。

返回到 Visual Studio 的“解决方案资源管理器”,将 local.settings.sample.json 重命名为 local.settings.json。

在 local.settings.json 中,将连接字符串粘贴到 AzureSignalRConnectionString 设置的值中。 保存文件。

打开 Functions.cs。 此函数应用中有两个 HTTP 触发的函数:

GetSignalRInfo - 使用 SignalRConnectionInfo 输入绑定来生成并返回有效的连接信息。

SendMessage - 在请求正文中接收聊天消息,并使用 SignalR 输出绑定将消息广播到所有连接的客户端应用程序。

使用以下选项之一在本地启动 Azure 函数应用。

Visual Studio:在“调试”菜单中,选择“开始调试”以运行应用程序。

7c8257b8619438ddf3ff75a72ea4f018.png

命令行:执行以下命令以启动函数主机。

func start

遇到问题? 尝试使用故障排除指南或通知我们。

运行 Web 应用程序

备注

HTML 文件的源位于 /docs/demo/chat-v2/index.html。 如果你想要自行托管 HTML,请在 /docs/demo/chat-v2 目录中启动本地 HTTP 服务器,如 http-server。 请确保将原点添加到 local.settings.json 中与示例类似的 CORS 设置。

"Host": {

"LocalHttpPort": 7071,

"CORS": "http://localhost:8080,https://azure-samples.github.io",

"CORSCredentials": true

}

系统提示输入函数应用的基 URL 时,输入 http://localhost:7071。

出现提示时输入用户名。

Web 应用程序调用函数应用中的 GetSignalRInfo 函数来检索连接信息以连接到 Azure SignalR 服务。 连接完成后,将显示聊天消息输入框。

键入消息,然后按 Enter。 应用程序将该消息发送到 Azure Function 应用中的 SendMessage 函数,然后后者使用 SignalR 输出绑定将该消息广播到所有连接的客户端。 如果一切正常工作,该消息应该出现在应用程序中。

5cb5df34c9fe087c38d7cca02a272c2b.png

在另一个浏览器窗口中打开另一个 Web 应用程序实例。 你将看到发送的任何消息都将出现在应用程序的所有实例中。

遇到问题? 尝试使用故障排除指南或通知我们。

清理资源

如果不打算继续使用此应用,请按照以下步骤删除本快速入门中创建的所有资源,以免产生任何费用:

在 Azure 门户的最左侧选择“资源组”,,然后选择创建的资源组。 或者,可以使用搜索框按名称查找资源组。

在打开的窗口中选择资源组,然后单击“删除资源组”。

在新窗口中键入要删除的资源组的名称,然后单击“删除”。

遇到问题? 尝试使用故障排除指南或通知我们

后续步骤

在本快速入门中,你在 Visual Studio 中生成并运行了一个实时无服务器应用程序。 接下来,详细了解如何使用 Visual Studio 开发和部署 Azure Functions。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微软服务Azure是一个全面的云计算平台,提供了多种基于云的计算服务来构建和运行应用程序。其中包括虚拟服务器、应用服务、Service Fabric、云服务Azure Functions等。Azure Service Fabric是一种分布式系统平台,可以轻松打包、部署和管理可缩放且可靠的微服务和容器。它提供了全面的应用程序管理功能,如设置、部署、监视、升级、修补和删除应用程序等。此外,Service Fabric还为许多核心Azure服务提供技术支持,如Azure SQL数据库、Azure Cosmos DB、Microsoft Power BI、Microsoft Intune、Azure IoT中心和Dynamics 365等\[1\]。你可以通过Azure的计算服务来构建和管理应用程序,这些服务具有可扩展性、容器管理、批处理和高性能计算等功能\[2\]。如果你想了解如何使用Azure CLI创建网站,你可以参考Microsoft的官方文档\[3\]。 #### 引用[.reference_title] - *1* *2* [微软服务Azure产品简介](https://blog.csdn.net/b2473195597/article/details/128184250)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [免费试用微软服务Azure(无需信用卡版)](https://blog.csdn.net/HAI7XIAO/article/details/121525965)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值