webrequest cookie 的获取问题

现在我要在自己的系统中登陆到 另一个站点的博客,  然后发表文章. 
  
现在实现了 登陆,  发文章是根据httpwatch 获得的地址和cookie,再post 过去的,如果是直接用监视到的cookie(header项里的值)  是可以实现发帖的 
  但这样 把一些内容就写死了, 如果有点变动,或者改个用户就不能用了,  我就先访问博客的主页, 获取cookie ,同样用httpwatch 可以看到有cookie项里有多个cookie ,但是通过下面的方法获取的就少几个, 
            HttpWebRequest req1 = WebRequest.Create(url) as HttpWebRequest; 
            CookieContainer mi =cookie;//通过登陆获取的 
            
            req1.Method = "GET"; 
            WebResponse wp1 = req1.GetResponse(); 

            Stream st1 = wp1.GetResponseStream(); 
            StreamReader sr1 = new StreamReader(st1); 
            string aa1 = sr1.ReadToEnd(); 
            CookieCollection cookieheader1 = req1.CookieContainer.GetCookies(req1.RequestUri); 
  这样获取的cookieheader1  比监视到的要少几个 ,不知道是怎么回事,  

  我想如果这里的cookie 获取对了,替换写死的的cookie 就应该可以了 

  弄了一天了,也搜索了不少, 还是没解决.

HUH函数
浏览 783回答 2
2回答

一只名叫tom的猫

CookieContainer cookies = new CookieContainer();每次请求时设置req.CookieContainer = cookies;这样登陆之后的Cookies会保存到CookieContainer里在下一次请求时也设置req.CookieContainer = cookies;会自动将登录返回的cookies放到这次请求的Cookies里面。
打开App,查看更多内容
随时随地看视频慕课网APP