需要把HttpWebResponse返回的Cookies放到cc中
  
*****************************************************************************
欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html

解决方案 »

  1.   

    你的Cookie没有带上,返回的Html请求如果有Set-Cookie的话,要Set到CookieContainer中。
      

  2.   

    谢谢两位..嗯..HttpWebResponse的确返回了带有Set-Cookie... 只是HttpWebResponse.cookies返回的是一个Cookie Collection。。 不知道怎么Set到CookieContainer中谢谢了
      

  3.   

    试试看使用HttpWebRequest.CookieContainer.Add(HttpWebResponse.Cookies)HttpWebRequest req = ......
    HttpWebResponse resp = .....
    .....
    req.CookieContainer.Add(resp.Cookies);
      

  4.   

    CookieContainer变量.SetCookies(uri,respone.Headers["Set-Cookie"]);
      

  5.   

    谢谢楼上两位...我发现使用过一次WebResponse后,好像无论是cc里还是WebRequest.CookieCollection里面都会自动出现Cookie的记录..我也试了手动把WebResponse.cookie加到WebRequest.CookieCollection了..可是还是不行.....有没有朋友愿意帮我看一下源码...我把登录相关的代码已经整理出来放到一个单独的工程里了....谢谢
      

  6.   

    此类问题我研究好几天了,你的问题可能是:
    1.返回的其实是很多cookie,但只是取到第一个而已.你可以先通过ie正常访问,并抓包查看来验证是否是这个问题.
    2.你有没有将验证后得到的cookie提交到最后的页面,若没有的话,也会出现你那样的问题.
      

  7.   

    这样改foreach (Cookie c in MyResponse.Cookies)
                {
                    c.Path = "";
                }
                cc.Add(MyResponse.Cookies);
      

  8.   

    多谢feiyun0112,这样改就好了。。谢谢