Esempio n. 1
0
        public async Task <AddScoreResponseModel> AddScore(AddScoreRequestModel requestModel)
        {//TODO see why refit not work for post
            // var httpClient = new HttpClient(Helper.Constants.Api_Key);
            //var api = RestService.For<IIslandingApi>("https://script.google.com/macros/s");
            //var model = JsonConvert.SerializeObject(requestModel);
            //var result = await api.PostScore(requestModel);
            //var data = JsonConvert.DeserializeObject<AddScoreResponseModel>(result);
            var client = new HttpClient();
            var data   = new AddScoreRequestModel {
                Name = requestModel.Name, Score = requestModel.Score, Difficuilty = requestModel.Difficuilty
            };
            var jsonString     = JsonConvert.SerializeObject(data);
            var requestContent = new StringContent(jsonString);
            var response       = client.PostAsync(Helper.Constants.Api_Key, requestContent).Result;

            System.Console.WriteLine(response.StatusCode);

            var result = response.Content.ReadAsStringAsync().Result;

            System.Console.WriteLine(result);
            var scoreItems = JsonConvert.DeserializeObject <AddScoreResponseModel>(result);

            System.Console.WriteLine(scoreItems.Message + scoreItems.Status);
            //}
            return(scoreItems);
        }
Esempio n. 2
0
        public async Task PostScore()
        {
            try
            {
                if (!IsBusy)
                {
                    var addScoreService = new AddScoreService();
                    var requestModel    = new AddScoreRequestModel {
                        Name = UserTag, Score = AverageTime.ToString(), Difficuilty = Preferences.Get("difficulty", Difficulty.Easy.ToString())
                    };
                    var response = await addScoreService.AddScore(requestModel);

                    if (response.Status != null)
                    {
                        if (response.Rank != 0)
                        {
                            ShowText        = "You are now ranked ";
                            ShowAverageTime = "NO." + response.Rank;
                        }
                        CheckNumberOfVisit();
                    }
                }
            }
            catch (Exception ex)
            {
                IsBusy          = false;
                ShowText        = "Play again to sharpen your brain";
                ShowAverageTime = "";
                Crashes.TrackError(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }