日期:2014-05-19  浏览次数:20679 次

做过自动登录的进~~~~整了一天都没整出来。。。
自动登陆post数据后,可以返回登陆后的url,但用Process.Start()打开这个url后提示没有的登陆,我想原因是CookieHeader并没有还原回去,有什么方法可以CookieHeader一起提交并打开页面呢?
代码:
                                string   cookieheader;
                                request   =   WebRequest.Create(url)   as   HttpWebRequest;
                                request.AllowAutoRedirect   =   true;
                                request.Method   =   "POST ";
                                request.ContentType   =   "application/x-www-form-urlencoded ";
                                CookieContainer   cookieCon   =   new   CookieContainer();
                                request.ContentLength   =   data.Length;
                                request.CookieContainer   =   cookieCon;
                                outstream   =   request.GetRequestStream();
                                outstream.Write(data,   0,   data.Length);
                                outstream.Close();

                                //发送请求并获取相应回应数据
                                response   =   request.GetResponse()   as   HttpWebResponse;

                                cookieheader   =   request.CookieContainer.GetCookieHeader(new   Uri(url));
                                request.CookieContainer.SetCookies(new   Uri(response.ResponseUri.ToString()),cookieheader);

                                //直到request.GetResponse()程序才开始向目标网页发送Post请求
                                System.Diagnostics.Process.Start(response.ResponseUri.ToString());

------解决方案--------------------
给你一段代码看看吧
/// <summary>
/// 获取指定地址的html
/// </summary>
/// <param name= "URL "> </param>
/// <param name= "PostData "> </param>
/// <param name= "encoding "> </param>
/// <returns> </returns>
public string GetHTML(string URL, string PostDat