网上取数据的一个例子

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

private void Page_Load(object sender, System.EventArgs e)

{

string url="http://localhost/webUserWindowExample/WebForm5.aspx";

System.Net .CookieContainer cook=new System.Net .CookieContainer();

string gets=getHTMLByUrlCook(url,ref cook,"Get",null,true);

string strViewState = System.Text .RegularExpressions .Regex.Replace(gets,"[\\s*\\S*]*<input type=\"hidden\" name=\"__VIEWSTATE\" value=\"([^\"]*)\"[\\s*\\S*]*","$1",System.Text .RegularExpressions.RegexOptions.IgnoreCase);

string param="__VIEWSTATE="+System.Web.HttpUtility.UrlEncode(strViewState)+"&TextBox1=xxxx&Button1=Button&CheckBox1=on";

string s=a.getHTMLByUrlCook(url,ref cook,"POST",param,true);

Response.Write(s);

}

public string getHTMLByUrlCook(string url,ref System.Net.CookieContainer cook,string sMethod,string Param,bool bAutoRedirect)

{

sMethod = sMethod.ToUpper();

sMethod = sMethod!="POST"?"GET":sMethod;

string res ="";

HttpWebRequest re =(HttpWebRequest)HttpWebRequest.Create(url);

re.CookieContainer = cook; // attach the cook object

re.Method = sMethod;

// re.AllowAutoRedirect = bAutoRedirect;

// re.UserAgent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; MyIE2; .NET CLR 1.1.4322)";

//

//re.ClientCertificates = new System.Security.Cryptography.X509Certificates.X509CertificateCollection();

//re.ClientCertificates = System.Security.Cryptography.X509Certificates.X509Certificate.CreateFromSignedFile();

//re.Timeout = 2000;

if (sMethod =="POST") // Post data to Server

{

re.ContentType="application/x-www-form-urlencoded";

Byte[] b = System.Text.Encoding.UTF8.GetBytes(Param);

re.ContentLength = b.Length;

try

{

Stream oSRe = re.GetRequestStream();

oSRe.Write(b,0,b.Length);

oSRe.Close();

oSRe = null;

}

catch(Exception )

{

re = null;

return "-1";

}

}

HttpWebResponse rep = null;

Stream oResponseStream = null;

StreamReader oSReader = null;

try

{

rep=(HttpWebResponse)re.GetResponse();

oResponseStream = rep.GetResponseStream();

oSReader = new StreamReader(oResponseStream,System.Text.Encoding.Default);

res =oSReader.ReadToEnd();

}

catch (System.Net.WebException e)

{

//res ="-1";

res = e.ToString();

}

if (rep!=null)

{

rep.Close();

rep = null;

}

if(oResponseStream!= null)

{

oResponseStream.Close();

oResponseStream = null;

}

if(oSReader!=null)

{

oSReader.Close();

oSReader = null;

}

re = null;

return res;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航