private void Button_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrWhiteSpace(tbNickname.Text)) { MessageBox.Show("Vypln nickname!"); } if (string.IsNullOrWhiteSpace(tbEmail.Text)) { MessageBox.Show("Vypln email!"); } bool isEmail = Regex.IsMatch(tbEmail.Text, @"\A(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)\Z", RegexOptions.IgnoreCase); if (!isEmail) { MessageBox.Show("Email neni spravne!"); } JsonNewUserRequest user = new JsonNewUserRequest(); user.email = tbEmail.Text; user.nickname = tbNickname.Text; var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://piskvorky.jobs.cz/api/v1/user"); httpWebRequest.ContentType = "application/json"; httpWebRequest.Method = "POST"; using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { string json = user.GetJsonString(); streamWriter.Write(json); } string resultJson; try { var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { resultJson = streamReader.ReadToEnd(); JsonNewUserResponse responseObj = JsonNewUserResponse.Parse(resultJson); Save(responseObj, user.nickname, user.email); } } catch (WebException ex) { var httpResponse = ex.Response; using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { resultJson = streamReader.ReadToEnd(); } MessageBox.Show(resultJson); } }
private void Save(JsonNewUserResponse jsonUser, string nickname, string email) { if (DataContext is Data data) { UserDV user = new UserDV(); user.Id = jsonUser.userId; user.Token = jsonUser.userToken; user.Email = email; user.Nickname = nickname; data.UsersPanelDV.UserListDV.Users.Add(user); } else { MessageBox.Show("Invalid Data Context - user registration"); } }