用.NET发起web请求时维持Session的方法zt

来源:互联网 发布:软件合同模板 编辑:程序博客网 时间:2024/04/28 05:45

一般使用.NET C#发起一个web请求是用WebClient类,应为使用很简单,但是每调用一次
OpenRead就会在服务器启用一个新Session

使用HttpWebRequest + CookieContainer就可以让多个web请求只有一个session
为HttpWebRequest 指定一个CookieContainer,使用同一个CookieContainer的Request就是一个session

代码如下:

   CookieContainer cc = new CookieContainer();   for(int i=0;i<100;i++)   {    HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("http://localhost/AspxApp/MainForm.aspx");    myReq.CookieContainer = cc;    HttpWebResponse resp = myReq.GetResponse() as HttpWebResponse;    Stream s = resp.GetResponseStream();    StreamReader sr = new StreamReader(s);    String text = sr.ReadToEnd();    sr.Close();    s.Close();   }
AspxApp这个程序返回的内容就是SessionId,这100个请求SessionId是相同的
原创粉丝点击