Crown.Request C# (CSharp) Method

Request() public static method

public static Request ( string function, JSON, parameters = null, CrownCallbackJSON callback = null, CrownCallbackJSON internalCallback = null ) : IEnumerator
function string
parameters JSON,
callback CrownCallbackJSON
internalCallback CrownCallbackJSON
return IEnumerator
    public static IEnumerator Request(string function, JSON parameters = null, CrownCallbackJSON callback = null, CrownCallbackJSON internalCallback = null)
    {
        string url = instance.serverURL;

        Crown.Log("Server request " + function);

        // Create www post
        WWWForm form = new WWWForm();

        // Add platform, function and parameters
        form.AddField("function", function);
        form.AddField("parameters", parameters.print());

        // Add user data
        form.AddField("userId", instance.userId);
        form.AddField("userKey", instance.userKey);
        form.AddField("userSpot", instance.userSpot);

        // Download
        WWW www = new WWW(url, form);
        yield return www;

        // Get request
        if (www.error == null)
        {
            // Try to get JSON DATA
            JSON result = null;
            try
            {
                result = new JSON(www.text);
                Crown.Log("Request result: " + result.print());
            }
            catch
            {
                Crown.Error("Server wrong data: " + www.text);
            }

            // Check for server errors
            if (result["error"] != null)
            {
                Crown.Error("Server error: " + result["error"], true);
            }
            // Get json array
            else if (result["data"] != null)
            {
                if (callback != null) callback(result["data"]);
                if (internalCallback != null) internalCallback(result["data"]);
            }
            else
            {
                Crown.Error("Server return's null result", true);
            }

        }
        else Crown.Error("Request error " + url + ", www error: " + www.error, true);
    }

Usage Example

Ejemplo n.º 1
0
    /*
     * Login to server and get user main data
     */
    public IEnumerator GetItems(CrownCallbackJSON callback = null)
    {
        JSON parameters = new JSON();

        parameters.AddField("var1", "teeeeeest55555");
        yield return(StartCoroutine(Crown.Request("getPlayerItems", parameters, callback, OnGetItems)));
    }
All Usage Examples Of Crown::Request