教程: 使用 Azure Functions 的 Cloudscript 本地调试
通过 Azure Functions,现在可以在本地测试和调试 CloudScript 代码。 完成本教程后,可以在调试器下运行本地 Azure Functions 应用 (例如在 VS Code 或 Visual Studio 中),设置断点并运行游戏客户端。
本教程介绍如何:
- 在本地 Azure Functions 应用中添加 ExecuteFunction 的实现
- 添加设置文件,告知 PlayFab SDK 从游戏中调用本地实现
先决条件
- 目前在以下 SDK 中支持本地调试:
添加本地的 ExecuteFunction 实现
对于 C# Azure Functions 应用
若要在 C# Azure Functions 应用中设置 ExecuteFunction 的本地实现,请将 ExecuteFunction.cs 文件添加到本地 Azure Functions 应用中。
本地执行 ExecuteFunction 所需的环境变量
这 local.settings.json
文件中添加以下设置:
名称 | 值 |
---|---|
PLAYFAB_TITLE_ID | 游戏 ID,以十六进制为单位 |
PLAYFAB_DEV_SECRET_KEY | 游戏的密钥。 可以在 Game Manager 中找到密钥,点击游戏名称右边的齿轮图标,进入 “游戏设置”>“密钥”。 |
例如:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "...",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"PLAYFAB_TITLE_ID": "B55D",
"PLAYFAB_DEV_SECRET_KEY": "AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMM"
}
}
配置 PlayFab SDK 以调用本地 ExecuteFunction 实现
若要告知 PlayFab SDK 将 ExecuteFunction API 调用重定向到本地实现,请在该两个地方之一添加 playfab.local.settings.json
调用文件:
- 计算机上的临时目录
- 在 Windows 上,这是 temp 环境变量
- 在 Linux/Mac 上,这是 TMPDIR 环境变量
- 游戏可执行文件的目录
设置文件的内容如下:
{ "LocalApiServer": "http://localhost:<portNumber>/api/<functionName>" }
当想要停止本地重定向并使 ExecuteFunction 调用 PlayFab API 服务器时,删除 playfab.local.settings.json
文件。
其他资源
Azure Functions 提供了有关如何在本地 测试和调试 Functions 的出色指南。
以下是上述文件的一些要点。
- 请确保 Azure Functions Core Tools 已经安装完毕
- 配置本地设置文件。 有关更多信息,通过使用 Visual Studio Code 开发 Azure Functions
- 在代码中设置断点
- 选择 F5 以开始调试