- Void PlayFab.PlayFabCloudScriptAPI:ExecuteFunction (ExecuteFunctionRequest, Action
1, Action
1, Object, Dictionary`2)+0x72 at S:\pj\unity2020\PlayFabTest4\Assets\PlayFabSDK\CloudScript\PlayFabCloudScriptAPI.cs:[64:17-64:184] C# Void PlayFabController:CallCSharpExecuteFunction ()+0xa4 at S:\pj\unity2020\PlayFabTest4\Assets\Scripts\PlayFabController.cs:[36:9-65:13] C#
Void PlayFabController:<Awake>b__0_0 (LoginResult)+0x39 at S:\pj\unity2020\PlayFabTest4\Assets\Scripts\PlayFabController.cs:[25:15-25:43] C#
上記コールスタックにおいて、ExecuteFunction が失敗します。
これが再現といえます。
ExecuteFunction 内の localApiServerString が localhost になっていました。
そのことによって、下記の return を通過します。
var localApiServerString = PlayFabSettings.LocalApiServer;
if (!string.IsNullOrEmpty(localApiServerString))
{
var baseUri = new Uri(localApiServerString);
var fullUri = new Uri(baseUri, "/CloudScript/ExecuteFunction".TrimStart('/'));
PlayFabHttp.MakeApiCallWithFullUri(fullUri.AbsoluteUri, request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context, callSettings);
return;
}
そうすると、"*azurewebsite.net" の url は使用されず、デバッグのための
localhost をセットアップする必要がありそうですが、
今回、localhost デバッグ環境で確認したいわけではないので、
localhost が適用されてしまう設定を無効、削除したいです。
なにか方法はあるでしょうか?
- yes 正確には個人で作成した Unity で作成したプログラムがクライアント
で、PlayFab の情報を参照して、Azure のendpoint に接続しています。
Azure Function の endpoint は、 fiddler で確認すると http status code 200 です。