Пример #1
0
        IEnumerator DoLoginUser(ILeaderBoardCaller caller, string username = "", string password = "")
        {
            WWWForm form = new WWWForm();

            form.AddField("username", username);
            form.AddField("password", password);

            UnityWebRequest webRequest = UnityWebRequest.Post(API_URL + "usr/login", form);

            yield return(webRequest.SendWebRequest());

            if (webRequest.isNetworkError)
            {
                Debug.LogError("Error posting: " + webRequest.error);

                LeaderBoardResponse apiResponse = new LeaderBoardResponse();
                apiResponse.status  = "KO";
                apiResponse.code    = "UPLOAD-HTTP-ERROR";
                apiResponse.message = webRequest.error;
                caller.ReturnLeaderboardCallback(apiResponse);
            }
            else
            {
                LeaderBoardResponse apiResponse = JsonUtility.FromJson <LeaderBoardResponse>(webRequest.downloadHandler.text);
                if (apiResponse.status == "OK")
                {
                    loggedUser = apiResponse.userData;
                }
                else
                {
                    loggedUser = null;
                }
                caller.ReturnLeaderboardCallback(apiResponse);
            }
        }
Пример #2
0
        IEnumerator DoLogoutUser(ILeaderBoardCaller caller)
        {
            UnityWebRequest webRequest = UnityWebRequest.Get(API_URL + "usr/logout");

            webRequest.SetRequestHeader("username", loggedUser.username);
            webRequest.SetRequestHeader("x-ldb-token", loggedUser.token);
            yield return(webRequest.SendWebRequest());

            LeaderBoardResponse apiResponse = new LeaderBoardResponse();

            if (webRequest.isNetworkError)
            {
                apiResponse.status  = "KO";
                apiResponse.code    = "RETRIEVE-NETWORK-ERROR";
                apiResponse.message = webRequest.error;
            }
            else
            {
                string jsonData = webRequest.downloadHandler.text;
                apiResponse = JsonUtility.FromJson <LeaderBoardResponse>(jsonData);
            }

            loggedUser = null;
            caller.ReturnLeaderboardCallback(apiResponse);
        }
Пример #3
0
        IEnumerator DoUploadScore(ILeaderBoardCaller caller, string score = "0")
        {
            WWWForm form = new WWWForm();

            form.AddField("score", score);

            UnityWebRequest webRequest = UnityWebRequest.Post(API_URL + "ldb/save", form);

            webRequest.SetRequestHeader("username", loggedUser.username);
            webRequest.SetRequestHeader("x-ldb-token", loggedUser.token);
            yield return(webRequest.SendWebRequest());

            if (webRequest.isNetworkError)
            {
                Debug.LogError("Error posting: " + webRequest.error);

                LeaderBoardResponse apiResponse = new LeaderBoardResponse();
                apiResponse.status  = "KO";
                apiResponse.code    = "UPLOAD-HTTP-ERROR";
                apiResponse.message = webRequest.error;
                caller.ReturnLeaderboardCallback(apiResponse);
            }
            else
            {
                LeaderBoardResponse apiResponse = JsonUtility.FromJson <LeaderBoardResponse>(webRequest.downloadHandler.text);
                caller.ReturnLeaderboardCallback(apiResponse);
            }
        }
Пример #4
0
        IEnumerator DoRetrieveList(ILeaderBoardCaller caller, string limit = "50", string offset = "0", string order = "DESC")
        {
            string queryString = "?limit=" + limit + "&offset=" + offset + "&order=" + order;

            Debug.Log("url requested: " + API_URL + "ldb" + queryString);
            UnityWebRequest webRequest = UnityWebRequest.Get(API_URL + "ldb" + queryString);

            webRequest.SetRequestHeader("username", loggedUser.username);
            webRequest.SetRequestHeader("x-ldb-token", loggedUser.token);
            yield return(webRequest.SendWebRequest());

            LeaderBoardResponse apiResponse = new LeaderBoardResponse();

            if (webRequest.isNetworkError)
            {
                apiResponse.status  = "KO";
                apiResponse.code    = "RETRIEVE-NETWORK-ERROR";
                apiResponse.message = webRequest.error;
            }
            else
            {
                string jsonData = webRequest.downloadHandler.text;
                apiResponse = JsonUtility.FromJson <LeaderBoardResponse>(jsonData);
            }
            caller.ReturnLeaderboardCallback(apiResponse);
        }
Пример #5
0
        IEnumerator DoRegisterUser(ILeaderBoardCaller caller, string username = "", string password = "", string passwordRepeat = "", string email = "", string emailRepeat = "")
        {
            WWWForm form = new WWWForm();

            form.AddField("username", username);
            form.AddField("password", password);
            form.AddField("password_repeat", passwordRepeat);
            form.AddField("email", email);
            form.AddField("email_repeat", emailRepeat);

            UnityWebRequest webRequest = UnityWebRequest.Post(API_URL + "usr/save", form);

            yield return(webRequest.SendWebRequest());

            if (webRequest.isNetworkError)
            {
                Debug.LogError("Error posting: " + webRequest.error);

                LeaderBoardResponse apiResponse = new LeaderBoardResponse();
                apiResponse.status  = "KO";
                apiResponse.code    = "UPLOAD-HTTP-ERROR";
                apiResponse.message = webRequest.error;
                caller.ReturnLeaderboardCallback(apiResponse);
            }
            else
            {
                LeaderBoardResponse apiResponse = JsonUtility.FromJson <LeaderBoardResponse>(webRequest.downloadHandler.text);
                caller.ReturnLeaderboardCallback(apiResponse);
            }
        }