2017년 8월 1일 화요일

c# HttpWebRequest 쿠키 복사

private void btnBrowserConn_Click(object sender, EventArgs e)
{
            HttpWebRequest wReq;
            HttpWebResponse wRes;
            string url = "test.com";

           // 로그인 된 쿠키 정보를 가져와서 사용하기
            CookieContainer container = GetCookieContainer(url);
         
            wReq = (HttpWebRequest)WebRequest.Create("http://" + url );
            wReq.Method = "GET"; // "GET" or "POST"
            wReq.ServicePoint.Expect100Continue = false;
            wReq.CookieContainer = container;

            using (wRes = (HttpWebResponse)wReq.GetResponse())
            {
                Stream respPostStream = wRes.GetResponseStream();
                StreamReader readerPost = new StreamReader(respPostStream);

                string resResult = readerPost.ReadToEnd();
            }
}

public CookieContainer GetCookieContainer(string url)
{
            CookieContainer container = new CookieContainer();

            foreach (string cookie in webBrowser1.Document.Cookie.Split(';'))
            {
                string name = cookie.Split('=')[0];
                string value = cookie.Substring(name.Length + 1);
                string path = "/";
                string domain = "." + url;
                container.Add(new Cookie(name.Trim(), value.Trim(), path, domain));
            }

            return container;
}

// 셀레리움  쿠키 복사
var cookieManager = chromeBrowser.GetCookieManager();
cookieManager.VisitAllCookies(new CookieVisitor());

// 셀레리움  쿠키 복사
--------------------------------------------------------------------------
CookieContainer cookieContainer = new CookieContainer(); CookieCollection cc = new CookieCollection(); foreach (OpenQA.Selenium.Cookie cook in _driver.Manage().Cookies.AllCookies) { System.Net.Cookie cookie = new System.Net.Cookie(); cookie.Name = cook.Name; cookie.Value = cook.Value; cookie.Domain = cook.Domain; cc.Add(cookie); } cookieContainer.Add(cc); HttpWebRequest httpWebRequest; httpWebRequest.CookieContainer = cookieContainer;

댓글 없음:

댓글 쓰기