WebBrowser的Cookie操作

it2022-05-05  122

1、WebBrowser设置Cookie  1 public   partial   class  WebBrowserControl : Form  2      { 3        private String url; 4 5        [DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)] 6        public static extern bool InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData); 7 8        public WebBrowserControl(String path) 9        {10            this.url = path;11            InitializeComponent();1213            // set cookie14            InternetSetCookie(url, "JSESSIONID", Globals.ThisDocument.sessionID);1516            // navigate17            webBrowser.Navigate(url);18        }19        20}  2、将WebBrowser的cookie信息传给HttpWebRequest. 先建一个"CookieContainer" 把WebBrowser中的Cookie保存在里面 //在WebBrowser中登录 cookie保存在 WebBrowser.Document.Cookie中       1           CookieContainer myCookieContainer  =   new  CookieContainer();  2  3  4              // String 的Cookie 要转成 Cookie型的 并放入CookieContainer中  5              string  cookieStr  =  webBrowser1.Document.Cookie;  6              string [] cookstr  =  cookieStr.Split( ' ; ' );  7              foreach  ( string  str  in  cookstr)  8              { 9                string[] cookieNameValue = str.Split('=');10                Cookie ck = new Cookie(cookieNameValue[0].Trim().ToString(), cookieNameValue[1].Trim().ToString());11                ck.Domain = "www.abc.com";//必须写对12                myCookieContainer.Add(ck);13            } 14 15             HttpWebRequest hreq  =  (HttpWebRequest)HttpWebRequest.Create( " http://www.abc.com/search.asp " ); 16             hreq.Method  =   " POST " ; 17             hreq.ContentType  =   " application/x-www-form-urlencoded " ; 18           19              // 自己创建的CookieContainer 20             hreq.CookieContainer  =  myCookieContainer; 21           22              string  postdata  =   " id=2005&action=search&name= " ; 23              byte [] byte1  =  Encoding.ASCII.GetBytes(postdata); 24             hreq.ContentLength  =  byte1.Length; 25            26             Stream poststream  =  hreq.GetRequestStream(); 27             poststream.Write(byte1,  0 , byte1.Length); 28             poststream.Close(); 29        30             HttpWebResponse hres  =  (HttpWebResponse)hreq.GetResponse();

转载于:https://www.cnblogs.com/yidanda/archive/2009/07/21/1527484.html

相关资源:各显卡算力对照表!

最新回复(0)