private void Login_button_Click(object sender, EventArgs e)//送出帳號密碼時 { WarningMessage_label.Visible = true; string s = Password_textBox.Text; s = s.Replace("%", "%25"); s = s.Replace("+", "%2B"); s = s.Replace(" ", "%20"); s = s.Replace("/", "%2F"); s = s.Replace("?", "%3F"); s = s.Replace("#", "%23"); s = s.Replace("&", "%26"); s = s.Replace("=", "%3D"); Password_textBox.Text = s; if (Account_textBox.Text == "" || (!Regex.IsMatch(Account_textBox.Text, @"^[[email protected]]*$")))//判斷是否有輸入帳號和是否有特殊自元 { WarningMessage_label.Text = "Please enter your account."; Account_textBox.Text = ""; Password_textBox.Text = ""; Account_textBox.Focus(); } else if (Password_textBox.Text == "") { WarningMessage_label.Text = "Please enter your password."; Password_textBox.Focus(); } else { Account_textBox.Text = ClearString(Account_textBox.Text.ToString()); Password_textBox.Text = ClearString(Password_textBox.Text.ToString()); ValidateAccount(); } }
private void ValidateAccount()//確認帳號是否正確 { try { //去下列網站認證帳號密碼 WebRequest request = WebRequest.Create("https://vls.yzu.edu.tw/auth-utf8.asp "); request.Method = "POST"; string postData = "acc=" + Account_textBox.Text + "&pwd=" + Password_textBox.Text + "&tkid=" + _TockenID + "&gpn=" + _Group + "&cpn=" + _HostName; byte[] byteArray = Encoding.UTF8.GetBytes(postData); request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = byteArray.Length; Stream dataStream = request.GetRequestStream(); dataStream.Write(byteArray, 0, byteArray.Length); dataStream.Close(); WebResponse response = request.GetResponse(); dataStream = response.GetResponseStream(); StreamReader reader = new StreamReader(dataStream); string responseFromServer = reader.ReadToEnd(); JObject json = JObject.Parse(responseFromServer); reader.Close(); dataStream.Close(); response.Close(); //判斷是否驗證成功 if (json["authentic"].ToString() == "1") { this.Hide(); } else { WarningMessage_label.Text = "登入失敗 Login Failed"; Loading_pictureBox.Visible = false; Login_button.ForeColor = System.Drawing.Color.Black; Account_textBox.Enabled = true; Password_textBox.Enabled = true; Account_textBox.ResetText(); Password_textBox.ResetText(); Account_textBox.Focus(); } } catch (WebException)//無法認證帳號 { DisconnectUI(); } }