通过C#中的WebRequest方法登录的特殊cookie
本文关键字:cookie 登录 方法 中的 WebRequest 通过 | 更新日期: 2024-09-25 00:38:55
我尝试使用此代码从网站获取cookie
CookieCollection cookies = new CookieCollection();
CookieContainer cooki = new CookieContainer();
HttpWebRequest request = (HttpWebRequest) WebRequest.Create(weburl.Text);
request.CookieContainer = cooki;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader read = new StreamReader(response.GetResponseStream());
request.CookieContainer = cooki;
request.CookieContainer.Add(cookies);
cookies = response.Cookies;
if(response.Cookies != null && response.Cookies.Count != 0)
{
foreach(Cookie c in response.Cookies)
listBox2.Items.Add(c.ToString());
}
else
listBox2.Items.Add("No Cookies");
但当我尝试这样的网站http://www.cloob.com什么也没发生。
我在C#中通过网络浏览器尝试了这个网站,并尝试了这个代码
string cooki = webbrowser1.Document.Cookie.tostring();
我得到了很多这样的信息:
Cookie=LMOT=1343810524;IdM=否;__utma=204761026.19745671.1343776441.1343805546.1343810526.4__utmz=204761026.1343776441.1.1.utmccn=(直接)|utmcsr=(直接)| utmcmd=(无);CR=%7B%22online_count%22:%5B%7B%22count%22:8059,%22status%22:%22available%22%7D,%7B%22count%22:%2221204%22,%22status%22:%22invisible%22%7D,%7B%22count%22:%2276%22,%22status%22:%22busy%22%7D%5D%7D;m_ id=1343781310_7982757;LCCT=1343809271__utmb=204761026;__utmc=204761026
现在我如何通过webrequest获取此信息?
虽然您的代码有点多余,但我看不出它有什么问题。当我针对http://www.google.com/
测试它时,它对我有效。http://www.cloob.com
可能在javascript中设置cookie,这可以解释为什么您可以在WebBrowser
对象中看到cookie,但不能在WebRequest
中看到。