async private void AddPetAction() { var serverConnect = new ServerConnect(); var petObject = new Pet { PetID = StringOperations.GenerateID(), UserID = MainApp.Session.UserID, PetName = Pet_Name, PetBreed = Pet_Breed, PetDesc = Pet_Desc }; IsBusy = true; ServerResponseObject response = await serverConnect.ConnectApi(petObject, Keys.Aws_Resource_SavePet); IsBusy = false; if (response.status == ServerReplyStatus.Success) { await MainApp.MainPage.DisplayAlert("Attention!", "Pet data saved successfully!", "Ok"); } else if (response.status == ServerReplyStatus.Fail) { await MainApp.MainPage.DisplayAlert("Attention!", "Error saving pet data!", "Ok"); } else if (response.status == ServerReplyStatus.Unknown) { await MainApp.MainPage.DisplayAlert("Attention!", $"Error saving pet data!:{response.error}", "Ok"); } }
public async Task <ServerResponseObject> ConnectApi(object _sentObject, string _endPoint) { //var returnMessage = ServerReplyStatus.Unknown; var responseMessage = new ServerResponseObject(); string the_uri; string jsonObject = JsonConvert.SerializeObject(_sentObject); var content = new StringContent(jsonObject, Encoding.UTF8, "application/json"); the_uri = Keys.Aws_Resource_Folder + _endPoint; Debug.WriteLine("//Connected To Server/Device with body:" + jsonObject + "\nWith URI:" + the_uri); using (HttpClient _client = new HttpClient()) { try { _client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(MyApp.Session.IdToken); var connectionResponse = await _client.PostAsync(the_uri, content); if (connectionResponse.IsSuccessStatusCode) { Debug.WriteLine($"//Connection success, Status code:{connectionResponse.StatusCode}"); responseMessage.status = ServerReplyStatus.Success; responseMessage.data = connectionResponse.Content.ReadAsStringAsync().Result; } else { Debug.WriteLine($"//Connection failed, Status code:{connectionResponse.StatusCode}"); responseMessage.status = ServerReplyStatus.Fail; } } catch (Exception e) { Debug.WriteLine($"//From {this.GetType().Name}, exception in connect:{e.Message}"); responseMessage.error = e.Message; responseMessage.status = ServerReplyStatus.Unknown; } } return(responseMessage); }