Sample code for 30+ languages & platforms
.NET Core C#

Adding Cookies to an HTTP Request

See more HTTP Examples

Demonstrates how to add one or more cookies to an HTTP request.

Chilkat .NET Core C# Downloads

.NET Core C#
bool success = false;

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

Chilkat.Http http = new Chilkat.Http();

// The Cookie header field has this format:
// Cookie: name1=value1 [; name2=value2] ...

// Build an HTTP POST request:
Chilkat.HttpRequest req = new Chilkat.HttpRequest();
req.SetFromUrl("http://www.chilkatsoft.com/echoPost.asp");
req.HttpVerb = "POST";

req.AddParam("param1","value1");
req.AddParam("param2","value2");

// To add cookies to any HTTP request sent by a Chilkat HTTP method
// that uses an HTTP request object, add the cookies to the
// request object by calling AddHeader.  

// Add two cookies:
req.AddHeader("Cookie","user=\"mary\"; city=\"Chicago\"");

// Send the HTTP POST.  
// (The cookies are sent as part of the HTTP header.)

string domain = "www.chilkatsoft.com";
int port = 80;
bool ssl = false;
Chilkat.HttpResponse resp = new Chilkat.HttpResponse();
success = http.HttpSReq(domain,port,ssl,req,resp);
if (success == false) {
    Debug.WriteLine(http.LastErrorText);
    return;
}

// Display the HTML body of the response.
if (resp.StatusCode == 200) {
    // Show the last HTTP request header sent, which should include
    // our cookies...
    Debug.WriteLine(http.LastHeader);
}
else {
    Debug.WriteLine("HTTP Response Status = " + Convert.ToString(resp.StatusCode));
}

Debug.WriteLine("---------------------");

// Some Chilkat HTTP methods do not use an HTTP request object. 
// For these methods, such as for QuickGetStr, cookies (or any HTTP request header) 
// are added by calling SetRequestHeader.  
http.SetRequestHeader("Cookie","user=\"mary\"; city=\"Chicago\"");

string html = http.QuickGetStr("http://www.w3.org/");
if (http.LastMethodSuccess != true) {
    Debug.WriteLine(http.LastErrorText);
}
else {
    // Show the last HTTP request header sent, which should include
    // our cookies...
    Debug.WriteLine(http.LastHeader);
}