Пример #1
0
        /// <summary>
        /// Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
        /// custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
        /// </summary>
        public static void ExecuteFunction(ExecuteFunctionRequest request, Action <ExecuteFunctionResult> resultCallback,
                                           Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            var context      = (request == null ? null : request.AuthenticationContext) ?? PlayFabSettings.staticPlayer;
            var callSettings = PlayFabSettings.staticSettings;

            if (!context.IsEntityLoggedIn())
            {
                throw new PlayFabException(PlayFabExceptionCode.NotLoggedIn, "Must be logged in to call this method");
            }

            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;
            }

            PlayFabHttp.MakeApiCall("/CloudScript/ExecuteFunction", request, AuthType.EntityToken, resultCallback,
                                    errorCallback, customData, extraHeaders, context, callSettings);
        }
Пример #2
0
        /// <summary>
        /// Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
        /// custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
        /// </summary>
        public static void ExecuteFunction(ExecuteFunctionRequest request, Action <ExecuteFunctionResult> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null)
        {
            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);
                return;
            }

            PlayFabHttp.MakeApiCall("/CloudScript/ExecuteFunction", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders);
        }