Sample code for 30+ languages & platforms
C#

HTTP POST (Duplicate Simple HTML Form POST)

Demonstrates how to duplicate a simple HTML form POST.

Chilkat C# Downloads

C#
bool success = false;

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

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

//  This example simulates this FORM:
//  <form action="echoPost.asp" method="post">
//  First name: <input type="text" name="firstName"><br />
//  Last name: <input type="text" name="lastName"><br />
//  <input type="submit" value="Submit">
//  </form>
//  The online FORM is found at this URL:
//  https://www.chilkatsoft.com/simpleForm.html

//  Build an HTTP POST Request:
req.HttpVerb = "POST";

//  The FORM target is http://www.chilkatsoft.com/processPost.asp
//  An easy way of filling out most of the HTTP request object
//  is to call SetFromUrl:
req.SetFromUrl("https://www.chilkatsoft.com/echoPost.asp");

//  Send form params using application/x-www-form-urlencoded
req.ContentType = "application/x-www-form-urlencoded";

//  The only remaining task is to add the params to the 
//  HTTP request object:
req.AddParam("firstName","Matt");
req.AddParam("lastName","Jones");

//  Send the HTTP POST and get the response.
//  The POST is being sent to chilkatsoft.com, on port 443 (using TLS)
string domain = "chilkatsoft.com";
int port = 443;
bool tls = true;

//  The HTTP POST is sent here:
Chilkat.HttpResponse resp = new Chilkat.HttpResponse();
success = http.HttpSReq(domain,port,tls,req,resp);
if (success == false) {
    Debug.WriteLine(http.LastErrorText);
    return;
}

//  Display the HTML source of the page returned.
Debug.WriteLine(resp.BodyStr);