How to pass cookies to HtmlAgilityPack or WebClient?

后端 未结 3 1702
一向
一向 2020-12-17 20:02

I use this code to login:

CookieCollection cookies = new CookieCollection();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(\"example.com\");
req         


        
3条回答
  •  暖寄归人
    2020-12-17 20:34

    Try caching cookies from previous response locally and resend them each web request as follows:

    private CookieCollection cookieCollection;
    
    ...
    
        parserObject = new HtmlWeb
                    {
                        AutoDetectEncoding = true,
                        PreRequest = request =>
                        {
                            if (cookieCollection != null)
                                cookieCollection.Cast()
                                    .ForEach(cookie => request.CookieContainer.Add(cookie));
                            return true;
                        },
                        PostResponse = (request, response) => { cookieCollection = response.Cookies; }
                    };
    

提交回复
热议问题