httpwebrequest获取cookie不全的问题(有图有代码,目前无真相...)

kamengwang 2011-03-14 03:18:49
网址:http://tuiguang.ganji.com/house_report/auth.php

我用httpwatch跟踪有7个cookie,而用httpwebrequest只能得到2个,不知道为啥,哪位帮个忙???



我只能得到 jsession 和 nsc_wt_uh_qpsu_80 ,连wt_fpc都得不到,很奇怪...



补充一下,我清了一下cookie,发现默认不是7个,是三个,但我的request还是只能得到两个,这个没有得到 __utmc Sent 32156897 / ganji.com (Session) 貌似跟域名有关系,但是我不知道怎么得到这个(ganji.com)域名下的cookie.




HttpWebRequest request;
HttpWebResponse response = null;

request = WebRequest.Create("http://tuiguang.ganji.com/house_report/auth.php") as HttpWebRequest;
request.CookieContainer = cookie;
request.Method = "GET";
request.Timeout = 30000;
request.AllowAutoRedirect = true;
request.ContentType = "application/x-www-form-urlencoded";
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; Alexa Toolbar)";
request.Accept = "*/*";
request.Referer = url;
//request.Headers.Add("Accept-Language", "zh-CN");
//request.Headers.Add("Accept-Encoding", "gzip, deflate");
request.KeepAlive = true;
try
{
//获取服务器返回的资源
using (response = (HttpWebResponse)request.GetResponse())
{
response.Cookies = request.CookieContainer.GetCookies(request.RequestUri);
using (StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{

// request.Headers.Remove("Cookie");
string cookieHeader = request.CookieContainer.GetCookieHeader(request.Address);
if (cookieHeader.Length > 0)
{
request.Headers["Cookie"] = cookieHeader;
}



if (response.Cookies.Count > 0)
{
cookie.Add(response.Cookies);
}
}
}
}
catch
{

}

...全文
529 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
andyqq8 2011-06-07
  • 打赏
  • 举报
回复
那几个cookie是通过一个JS文件里设置的,也不是必须的,不用理会
T_long 2011-06-07
  • 打赏
  • 举报
回复
我也是,那些参数咋加上去呢?
kamengwang 2011-03-14
  • 打赏
  • 举报
回复
上去啊.....

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧