大家好, 我用HttpWebRequest浏览器一个网站, 已经设置了 CookieContainer, 发现获取的cookie不对. 用 sniffer查看, 是服务器返回了多行的 Set-Cookie:***, HttpWebReqeust只认最后一行.请问, 这种情况如何让 HttpWebRequest正确解析多行的 Set-Cookie?

解决方案 »

  1.   

    if (response.Headers["Set-Cookie"] != null)
                {
                    mycookies.SetCookies(request.RequestUri, response.Headers["Set-Cookie"]);
                }
      

  2.   

    谢谢 Red_angelX(八戒) 的回复, 不过, response.Headers["Set-Cookie"]只能得到最后一行的值, 我希望得到所以的 Set-Cookie 的内容.
      

  3.   

    vb可以C++可以,C#还真没有办法。
    可以考虑重写webrequest的方法。
      

  4.   

    每个Cookie-Set的值对间使用,分隔。你可以才通过拆分来获取单个Cookie-set
      

  5.   

    我也遇到此问题了,没找到其他办法,后来只好自己写解析函数了。
    需要的可以去看看:
    【已解决】C#中得到的Http的response中的Set-Cookie的内容的格式不对/错误/不正确 –> 已实现把Set-Cookie部分的字符串解析为CookieCollection
    http://www.crifan.com/2012/02/14/uncorrent_format_of_http_returned_set_cookie_in_csharp/