WebClient无疑是C# 中访问web最简易快捷的方法:PostData/DownloadFile 为众人所倾倒.
但有些要求Session保持的情况,则WebClient鞭长莫及了.
定义全局变量:
HttpWebRequest craboRequest=null;
CookieContainer craboCookie = new CookieContainer();
private string SendRequest(string _url,string _requestString)
{
try
{
#region Request
byte[] requestBytes = System.Text.Encoding.GetEncoding("GB2312").GetBytes(_requestString);
craboRequest= (HttpWebRequest)WebRequest.Create(_url);
craboRequest.ContentType = "application/x-www-form-urlencoded";
craboRequest.ContentLength= requestBytes.Length;
craboRequest.Method = "POST";
craboRequest.CookieContainer = craboCookie;
using(Stream writer = craboRequest.GetRequestStream())
{
writer.Write(requestBytes,0,requestBytes.Length);
}
#endregion
}
博客指出C#中WebClient访问web虽便捷,但在需保持Session的情况无法满足。随后给出解决方案,定义全局变量,通过HttpWebRequest创建请求,设置请求内容、方法等,利用Stream写入请求字节,以实现保持Session的Web请求。
4965

被折叠的 条评论
为什么被折叠?



