Sample code for 30+ languages & platforms
C++

HTTP POST x-www-form-urlencoded

Demonstrates how to send a simple URL encoded POST (content-type = x-www-form-urlencoded). Form params are passed in the HTTP request body in x-www-form-urlencoded format.

Chilkat C++ Downloads

C++
#include <CkHttp.h>
#include <CkHttpRequest.h>
#include <CkHttpResponse.h>

void ChilkatSample(void)
    {
    bool success = false;

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

    CkHttp http;

    CkHttpRequest req;

    //  Add the request params expected by the server-side:
    req.AddParam("city","Paris");
    req.AddParam("country","France");

    //  Send the POST
    req.put_HttpVerb("POST");
    req.put_ContentType("application/x-www-form-urlencoded");

    CkHttpResponse resp;
    success = http.HttpReq("http://www.chilkatsoft.com/httpTest/cityCountry.asp",req,resp);
    if (success == false) {
        std::cout << http.lastErrorText() << "\r\n";
        return;
    }

    //  The exact HTTP request sent and response received
    //  by the example code above is as follows:

    //  ---- Sending ----
    //  POST /httpTest/cityCountry.asp HTTP/1.1
    //  Host: www.chilkatsoft.com
    //  Content-Type: application/x-www-form-urlencoded
    //  Content-Length: 25
    //  
    //  city=Paris&country=France
    //  ---- Received ----
    //  HTTP/1.1 200 OK
    //  Date: Wed, 09 Dec 2009 16:16:00 GMT
    //  Server: Microsoft-IIS/6.0
    //  X-Powered-By: ASP.NET
    //  Content-Length: 156
    //  Content-Type: text/html
    //  Set-Cookie: ASPSESSIONIDQCDTSSAC=MHJCNFMDENFOKGINOFEDILCM; path=/
    //  Cache-control: private
    //  
    //  
    //  <html>
    //  <head>
    //  <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    //  </head>
    //  <body>
    //  
    //  France<br />Paris<br />
    //  
    //  </body>
    //  </html>
    }