C# create cookie from string and send it

17,003

Solution 1

//build uri and cookie
Uri uri = new Uri("domain");
Cookie cookie = new Cookie("name", "value");

//build request
HttpWebRequest request = WebRequest.Create("domain") as HttpWebRequest;
request.CookieContainer = new CookieContainer();
request.CookieContainer.Add(uri, cookie);

Resources:

Solution 2

String CookieStr = "recentlyVisitedAppHubs=233450%2C231430%2C48110%2C45760; 
Language=spanish; strInventoryLastContext=440_2";
CookieContainer cookiecontainer = new CookieContainer();
string[] cookies = CookieStr.Split(';');
foreach (string cookie in cookies)
   cookiecontainer.SetCookies(new Uri("http://url.com"), cookie);
request.CookieContainer = cookiecontainer;
Share:
17,003
Gonzalo Hernandez
Author by

Gonzalo Hernandez

merge me

Updated on June 08, 2022

Comments

  • Gonzalo Hernandez
    Gonzalo Hernandez almost 2 years

    I want to make a POST request to HTTP server, but I need to "include" a cookie in the request, I have the cookie but I dont know how to mess with cookie container

    HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
    request.Method = "POST";
    request.Accept = "text/javascript, text/html, application/xml, text/xml, */*";
    request.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
    request.Host = "url.com";
    request.UserAgent = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.47 Safari/536.11";
    request.Referer = "http://url.com";
    request.Headers.Add("X-Requested-With", "XMLHttpRequest");
    request.Headers.Add("X-Prototype-Version", "1.7");
    request.Headers.Add("Accept-Encoding: gzip, deflate");
    

    and this is a sample cookie:

    Cookie recentlyVisitedAppHubs=233450%2C231430%2C48110%2C45760; Language=spanish; strInventoryLastContext=440_2; __utma=268881843.118202637.1372069740.1373472452.1373473085.10; __utmb=268881843.21.10.1373473085; __utmz=268881843.1373473085.10.4.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not%20provided); rgTopicView_General_4312225=%7B%22828934913396342649%22%3A%221373450285%22%2C%22846939615003500718%22%3A1373473557%7D; timezoneOffset=7200,0; sessionid=NDExNjE1NDE5; Login=765611979917322708A9C768; steamRememberLogin=76561197991732272; __utma=268881843.118202637.1372069740.1373472452.1373473085.10; __utmb=268881843.22.10.1373473085; __utmc=268881843; __utmz=268881843.1373473085.10.4.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not%20provided)

    But I dont know how to convert that cookie into a Cookie container and then add it to the request. request.CookieContainer = cookie;