public async void OnPostLoginAsync() { FirebaseManager firebaseManager = new FirebaseManager(); VerifyLoginResponseModel responseModel = firebaseManager.VerifyLogin(Email, Password); if (responseModel.Success) { // login successful } else { Debug.WriteLine("Login Failed");// login not successful } }
// TODO: Replace webrequest with httpclient **** public VerifyLoginResponseModel VerifyLogin(string email, string password) { HttpWebRequest request = WebRequest.CreateHttp($"{BaseURLForAuth}verifyPassword?key={APIKey}"); request.Method = "POST"; request.ContentType = "application/json"; // get post body data VerifyLoginRequestModel requestModel = new VerifyLoginRequestModel(email, password); var body = Newtonsoft.Json.JsonConvert.SerializeObject(requestModel); var buffer = Encoding.UTF8.GetBytes(body); request.ContentLength = buffer.Length; request.GetRequestStream().Write(buffer, 0, buffer.Length); // get response // TODO: do error handling VerifyLoginResponseModel responseModel = null; try { var response = request.GetResponse(); using (var reader = new System.IO.StreamReader(response.GetResponseStream(), ASCIIEncoding.ASCII)) { string responseString = reader.ReadToEnd(); if (!String.IsNullOrEmpty(responseString)) { responseModel = JsonConvert.DeserializeObject <VerifyLoginResponseModel>(responseString); } } responseModel.Success = true; } catch (Exception ex) { var message = ex.Message; responseModel = new VerifyLoginResponseModel(); responseModel.Success = false; responseModel.Message = message; } return(responseModel); }