练习:使用 Visual Studio Code 创建 Azure 函数
在本练习中,你可学习如何创建一个 C# 函数,以响应 HTTP 请求。 在 Visual Studio Code 中创建并本地测试代码后,将其部署到 Azure。
先决条件
在开始之前,请确保满足以下要求:
具有活动订阅的 Azure 帐户。 如果你还没有,可在 https://azure.com/free 注册免费试用版。
Azure Functions Core Tools 版本 4.x。
安装在某个受支持的平台上的 Visual Studio Code。
.NET 6 是以下步骤的目标框架。
Visual Studio Code 的 C# 扩展。
Visual Studio Code 的 Azure Functions 扩展。
创建本地项目
在本部分,你将使用 Visual Studio Code 在 C# 中创建一个本地 Azure Functions 项目。 在此练习的后面,会将函数代码发布到 Azure。
在活动栏中选择“Azure”图标,然后在“工作区”区域中,选择“添加…”。最后,选择“创建函数…”。
注意
如果选择“创建新项目”,则可能会出现一条弹出消息,提示你创建新项目。
为项目工作区选择目录位置,然后选择“选择” 。
注意
请确保选择现有工作区以外的项目文件夹。
根据提示提供以下信息:
- 选择语言:选择
C#
。 - 选择 .NET 运行时:选择
.NET 6
- 为项目的第一个函数选择模板:选择
HTTP trigger
。 - 提供函数名称:键入
HttpExample
。 - 提供命名空间:键入
My.Function
。 - 授权级别:选择
Anonymous
,这使任何人都可以调用你的函数终结点。 - 选择打开项目的方式:选择
Add to workspace
。
- 选择语言:选择
Visual Studio Code 将使用此信息生成一个包含 HTTP 触发器的 Azure Functions 项目。
在本地运行函数
Visual Studio Code 与 Azure Functions Core Tools 相集成,便于你在发布到 Azure 之前在本地开发计算机上运行此项目。
请确保在 Visual Studio Code 中打开终端。 可以通过选择“终端”,然后在菜单栏中选择“新建终端”来打开终端。
按 F5 在调试程序中启动函数应用项目。 来自 Core Tools 的输出会显示在“终端” 面板中。 应用将在“终端”面板中启动。 可以看到 HTTP 触发函数的 URL 终结点在本地运行。
运行 Core Tools 后,转到“Azure:Functions”区域。 在“Functions”下,展开“本地项目”>“Functions” 。 右键单击
HttpExample
函数,然后选择“立即执行函数...”。在“输入请求正文”中键入请求消息正文值
{ "name": "Azure" }
。 按 Enter 将此请求消息发送给函数。 当函数在本地执行并返回响应时,Visual Studio Code 中将引发通知。 函数执行的相关信息将显示在“终端”面板中。按 Shift + F5 停止 Core Tools 并断开调试程序。
确认该函数可以在本地计算机上正确运行以后,可以使用 Visual Studio Code 将项目直接发布到 Azure。
登录 Azure
在发布应用之前,必须先登录到 Azure。 如果已登录,请转到下一部分。
如果尚未登录,请选择活动栏中的“Azure”图标,然后在“Azure:功能”区域中,选择“登录到 Azure...”。
在浏览器中出现提示时,请选择你的 Azure 帐户,并使用你的 Azure 帐户凭据登录。
成功登录后,可以关闭新浏览器窗口。 属于你的 Azure 帐户的订阅显示在边栏中。
在 Azure 中创建资源
在本部分中,将创建部署本地函数应用所需的 Azure 资源。
在活动栏中选择“Azure”图标,然后在“资源”区域中选择“创建资源…”按钮。
根据提示提供以下信息:
- 选择“在 Azure 中创建函数应用…”
- 输入函数应用的全局唯一名称:键入在 URL 路径中有效的名称。 将对你键入的名称进行验证,以确保其在 Azure Functions 中是唯一的。
- “选择运行时堆栈”:使用在上面的“创建本地项目”部分中所做的相同选择。
- 选择新资源的位置:为了获得更好的性能,请选择你附近的区域。
- 选择订阅:选择要使用的订阅。 如果只有一个订阅,则不会看到此项。
在 Azure 中创建各项资源时,扩展在终端窗口的“AZURE: ACTIVITY LOG”区域中显示这些资源的状态。
完成后,将使用基于函数应用名称的名称在订阅中创建以下 Azure 资源:
- 一个资源组:相关资源的逻辑容器。
- 一个标准 Azure 存储帐户:用于维护项目的状态和其他信息。
- 一个消耗计划:用于定义无服务器函数应用的基础主机。
- 一个函数应用:提供用于执行函数代码的环境。 可以通过函数应用将函数分组为逻辑单元,以便在同一托管计划中更轻松地管理、部署和共享资源。
- 一个连接到函数应用的 Application Insights 实例:用于跟踪无服务器函数的使用情况。
部署代码
在 Azure 栏的“工作区”部分中,选择“部署…”按钮,然后选择“部署到函数应用…”。
当系统提示“选择资源”时,请选择在上一部分中创建的函数应用。
在确认提示上选择“部署”,确认你要部署函数。
重要
发布到现有函数时,会覆盖以前的部署。
在 Azure 中运行函数
返回侧边栏中的“资源”区域,展开订阅、新函数应用和“函数”。 右键单击
HttpExample
函数,然后选择“立即执行函数...”。在“输入请求正文”中,你将看到请求消息正文值 。 按 Enter 将此请求消息发送给函数。
当函数在 Azure 中执行并返回响应时,Visual Studio Code 中将引发通知。