チュートリアル: Azure Functions を使用した Cloudscript のローカル デバッグ

Azure Functions を使用すると、CloudScript コードをローカルでテストしてデバッグできるようになりました。 このチュートリアルを完了したら、デバッガー (VS Code や Visual Studio など) でローカル Azure Functions アプリを実行し、ブレークポイントを設定し、ゲーム クライアントを実行できます。

このチュートリアルで学習する内容は次のとおりです。

  • ExecuteFunction の実装をローカル Azure Functions アプリに追加する
  • ゲームからローカル実装を呼び出す設定ファイルを追加して、PlayFab SDK に指示する

前提条件

ExecuteFunction のローカル実装を追加する

C# Azure Functions アプリの場合

C# Azure Functions アプリで ExecuteFunction のローカル実装を設定するには 、ExecuteFunction.cs ファイルをローカル Azure Functions アプリに追加します。

ExecuteFunction のローカル実装に必要な環境変数

local.settings.json ファイルに次の設定を追加します。

名前
PLAYFAB_TITLE_ID タイトル ID (16 進数形式)
PLAYFAB_DEV_SECRET_KEY タイトルの秘密鍵。 ゲーム マネージャーで秘密鍵を見つけるには、タイトルの名前の右側にある歯車アイコンをクリックし、[タイトルの設定]>[秘密鍵]に進みます。

例:

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "...",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    "PLAYFAB_TITLE_ID": "B55D",
    "PLAYFAB_DEV_SECRET_KEY": "AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMM"
  }
}

ローカルの ExecuteFunction 実装を呼び出す PlayFab SDK を構成する

ExecuteFunction API 呼び出しをローカル実装にリダイレクトするように PlayFab SDK に指示するには、 playfab.local.settings.json という名前のファイルを次の 2 つの場所のいずれかに追加します。

  • コンピューター上の一時ディレクトリ
    • 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 を選択してデバッグを開始する