private string SendRequest(string account, string cardNumber, string cardPass) { string targetUrl = https://xxx.com/;//要提交数据的目标网站 //提交的数据 string postData = string.Format("ursName={0}&userName2={0}&cardNo={1}&cardPass={2}", account, cardNumber, cardPass); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(targetUrl); request.Method = "POST"; request.Referer = http://www.xxx.com/jsp/xxx.jsp; byte[] bytes = Encoding.UTF8.GetBytes(postData); request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = bytes.Length; Stream requestStream = request.GetRequestStream(); requestStream.Write(bytes, 0, bytes.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default); string responseText = reader.ReadToEnd(); string res = "成功!"; if (responseText.Contains("errorID")) { string errorDetailPage = new System.Text.RegularExpressions.Regex(@"URL=(?<url>.*?)"">", System.Text.RegularExpressions.RegexOptions.IgnoreCase | System.Text.RegularExpressions.RegexOptions.Multiline ).Match(responseText).Groups["url"].Value; HttpWebRequest requestErrorInfo = (HttpWebRequest)WebRequest.Create(errorDetailPage); requestErrorInfo.Method = "GET"; requestErrorInfo.Proxy = request.Proxy; HttpWebResponse responseErrorInfo = (HttpWebResponse)requestErrorInfo.GetResponse(); StreamReader readerErrorInfo = new StreamReader(responseErrorInfo.GetResponseStream(), Encoding.Default); string responseTextErrorInfo = readerErrorInfo.ReadToEnd(); string errorDetailMessage = new System.Text.RegularExpressions.Regex(@"<h3>(?<info>.*?)<.*?</h3>", System.Text.RegularExpressions.RegexOptions.IgnoreCase | System.Text.RegularExpressions.RegexOptions.Multiline ).Match(responseTextErrorInfo).Groups["info"].Value.Replace(" ", ""); res = string.Format(@"失败!<br />错误信息:{0}<br /><a href=""{1}"" target=""_blank"">查看错误详情</a>", errorDetailMessage, errorDetailPage); } return res; }