public void BindAuthentication(Models.REST.V2_0.Login.Output.RootObject x) { AppBase.Current.User = new iFixit.Domain.Models.UI.User { Token = x.authToken, UserId = x.userid, UserName = x.username, Email = x.email, ImageUrl = x.image.thumbnail }; IsAuthenticated = true; }
public async Task <Models.REST.V2_0.Login.Output.RootObject> RegistrationLogin(string email, string username, string password) { Models.REST.V2_0.Login.Output.RootObject Result = null; var url = new StringBuilder(); url.Append(BaseUrl).Append(UserRegistration); RemoveAuthorizationHeader(); try { var userAccount = new Models.REST.V2_0.Registration.Input.RootObject { email = email, password = password, username = username }; var parameters = userAccount.SaveAsJson(); var request = new HttpRequestMessage(HttpMethod.Post, new Uri(url.ToString(), UriKind.RelativeOrAbsolute)) { Content = new StreamContent(new MemoryStream(System.Text.Encoding.UTF8.GetBytes(parameters))) }; var result = await _client.SendAsync(request); var content = await result.Content.ReadAsStringAsync(); if (!result.IsSuccessStatusCode) { var e = JsonConvert.DeserializeObject <Models.REST.V2_0.Registration.Error.RootObject>(content).message; throw new ArgumentException(e); } Result = JsonConvert.DeserializeObject <Models.REST.V2_0.Login.Output.RootObject>(content); Result.email = email; } catch (HttpRequestException hex) { throw hex; } catch (Exception ex) { throw ex; } return(Result); }
public async Task <Models.REST.V2_0.Login.Output.RootObject> DoLogin(string email, string password) { var Result = new Models.REST.V2_0.Login.Output.RootObject(); var url = new StringBuilder(); url.Append(BaseUrl).Append(Login); RemoveAuthorizationHeader(); try { var login = new Models.REST.V2_0.Login.Input.RootObject { email = email, password = password }; var parameters = login.SaveAsJson(); var request = new HttpRequestMessage(HttpMethod.Post, new Uri(url.ToString(), UriKind.RelativeOrAbsolute)); request.Content = new StreamContent(new MemoryStream(System.Text.Encoding.UTF8.GetBytes(parameters))); var result = await _client.SendAsync(request); var content = await result.Content.ReadAsStringAsync(); Debug.WriteLine(content); Result = JsonConvert.DeserializeObject <Models.REST.V2_0.Login.Output.RootObject>(content); Result.email = email; } catch (HttpRequestException hex) { throw hex; } catch (Exception ex) { throw ex; } return(Result); }