public static async Task <bool> tryLogin(string username, string password) { Boolean success = false; try { Uri uri = new Uri(String.Format(loginURL, username)); HttpBaseProtocolFilter filter = new HttpBaseProtocolFilter(); filter.AllowUI = false; filter.ServerCredential = new Windows.Security.Credentials.PasswordCredential( uri.ToString(), username, password); var httpClient = new HttpClient(filter); var response = await httpClient.GetAsync(uri); response.EnsureSuccessStatusCode(); var jsonString = response.Content.ToString(); var result = JsonConvert.DeserializeAnonymousType(jsonString, new { personal_info = new PersonalInfo() }); var personalPhotoUrl = String.Format(photoURL, username); var photoHttpResponse = await httpClient.GetAsync(new Uri(personalPhotoUrl)); var repository = new PersonalInfoRespository(); IBuffer buffer = await photoHttpResponse.Content.ReadAsBufferAsync(); String photo = await repository.SavePhotoAsync(buffer, username); result.personal_info.photo = photo; await repository.SaveAsync(result.personal_info); var vault = new PasswordVault(); vault.Add(new PasswordCredential(VAULT_RESOURCE, username, password)); success = true; } catch (Exception e) { Debug.WriteLine(e.StackTrace); } return(success); }
public static async Task<bool> tryLogin(string username, string password){ Boolean success = false; try { Uri uri = new Uri(String.Format(loginURL, username)); HttpBaseProtocolFilter filter = new HttpBaseProtocolFilter(); filter.AllowUI = false; filter.ServerCredential = new Windows.Security.Credentials.PasswordCredential( uri.ToString(), username, password); var httpClient = new HttpClient(filter); var response = await httpClient.GetAsync(uri); response.EnsureSuccessStatusCode(); var jsonString = response.Content.ToString(); var result = JsonConvert.DeserializeAnonymousType(jsonString, new { personal_info = new PersonalInfo() }); var personalPhotoUrl = String.Format(photoURL, username); var photoHttpResponse = await httpClient.GetAsync(new Uri(personalPhotoUrl)); var repository = new PersonalInfoRespository(); IBuffer buffer = await photoHttpResponse.Content.ReadAsBufferAsync(); String photo = await repository.SavePhotoAsync(buffer, username); result.personal_info.photo = photo; await repository.SaveAsync(result.personal_info); var vault = new PasswordVault(); vault.Add(new PasswordCredential(VAULT_RESOURCE, username, password)); success = true; } catch (Exception e) { Debug.WriteLine(e.StackTrace); } return success; }