Tôi muốn đăng một số dữ liệu biểu mẫu tới một URL được chỉ định không nằm trong ứng dụng web của riêng tôi. Nó có cùng tên miền, chẳng hạn như "domain.client.nl". Ứng dụng web có url "web.domain.client.nl" trên url mà tôi muốn đăng là "idp.domain.client.nl". Nhưng mã của tôi không có gì ..... ai đó biết tôi đang làm gì sai?Dữ liệu biểu mẫu bài đăng bằng cách sử dụng HttpWebRequest
Wouter
StringBuilder postData = new StringBuilder();
postData.Append(HttpUtility.UrlEncode(String.Format("username={0}&", uname)));
postData.Append(HttpUtility.UrlEncode(String.Format("password={0}&", pword)));
postData.Append(HttpUtility.UrlEncode(String.Format("url_success={0}&", urlSuccess)));
postData.Append(HttpUtility.UrlEncode(String.Format("url_failed={0}", urlFailed)));
ASCIIEncoding ascii = new ASCIIEncoding();
byte[] postBytes = ascii.GetBytes(postData.ToString());
// set up request object
HttpWebRequest request;
try
{
request = (HttpWebRequest)HttpWebRequest.Create(WebSiteConstants.UrlIdp);
}
catch (UriFormatException)
{
request = null;
}
if (request == null)
throw new ApplicationException("Invalid URL: " + WebSiteConstants.UrlIdp);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postBytes.Length;
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
// add post data to request
Stream postStream = request.GetRequestStream();
postStream.Write(postBytes, 0, postBytes.Length);
postStream.Flush();
postStream.Close();
có thể trùng lặp: http://stackoverflow.com/questions/5401501/how-to-post-data-to-specific-url-using-webclient-in-c-sharp – Dariusz
Không khá trùng lặp, vì người khác đặc biệt muốn sử dụng 'WebClient'. –