다음을 통해 공유


자습서: Azure Functions를 사용하는 CloudScript의 로컬 디버깅

이제 Azure Functions 사용하여 CloudScript 코드를 로컬로 테스트하고 디버그할 수 있습니다. 이 자습서를 완료한 후 디버거에서 로컬 Azure Functions 앱을 실행하고(예: VS Code 또는 Visual Studio) 중단점을 설정하고 게임 클라이언트를 실행할 수 있습니다.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • 로컬 Azure Functions 앱에 ExecuteFunction 구현 추가
  • PlayFab SDK에 게임에서 해당 로컬 구현을 호출하도록 지시하는 설정 파일 추가

필수 구성 요소

ExecuteFunction의 로컬 구현 추가

C# Azure Functions 앱의 경우

C# Azure Functions 앱에서 ExecuteFunction의 로컬 구현을 설정하려면 C# ExecuteFunction.cs 파일을 로컬 Azure Functions 앱에 추가합니다.

ExecuteFunction의 로컬 구현에 필요한 환경 변수

local.settings.json 파일에 다음 설정을 추가합니다.

이름
PLAYFAB_TITLE_ID 16진수 형식의 타이틀 ID
PLAYFAB_DEV_SECRET_KEY 타이틀의 비밀 키입니다. 게임 관리자에서 타이틀 이름 오른쪽의 기어 아이콘을 클릭하고 타이틀 설정>비밀 키로 이동하면 비밀 키를 찾을 수 있습니다.

예:

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

로컬 ExecuteFunction 구현을 호출하도록 PlayFab SDK 구성

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에는 함수를 로컬로 테스트 및 디버그하는 방법에 대한 훌륭한 가이드가 있습니다.

다음은 위 문서의 몇 가지 주요 내용입니다.