Sample code for 30+ languages & platforms
Unicode C++

Transition from Http.PostUrlEncoded to Http.HttpReq

Provides instructions for replacing deprecated PostUrlEncoded method calls with HttpReq.

Sends the following raw HTTP request:

POST /echoPost.asp HTTP/1.1
Host: www.chilkatsoft.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 50

company=example&ip=111.111.111.111&url=example.com

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkHttpW.h>
#include <CkHttpRequestW.h>
#include <CkHttpResponseW.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkHttpW http;

    const wchar_t *url = L"https://www.chilkatsoft.com/echoPost.asp";

    CkHttpRequestW req;
    req.AddParam(L"company",L"example");
    req.AddParam(L"ip",L"111.111.111.111");
    req.AddParam(L"url",L"example.com");

    //  ------------------------------------------------------------------------
    //  The PostUrlEncoded method is deprecated:

    CkHttpResponseW *responseObj = http.PostUrlEncoded(url,req);
    if (http.get_LastMethodSuccess() == false) {
        wprintf(L"%s\n",http.lastErrorText());
        return;
    }

    //  ...
    //  ...

    delete responseObj;

    //  ------------------------------------------------------------------------
    //  Do the equivalent using HttpReq.
    //  Your application creates a new, empty HttpResponse object which is passed 
    //  in the last argument and filled upon success.

    CkHttpRequestW req2;
    req2.AddParam(L"company",L"example");
    req2.AddParam(L"ip",L"111.111.111.111");
    req2.AddParam(L"url",L"example.com");

    req2.put_HttpVerb(L"POST");
    req2.put_ContentType(L"application/x-www-form-urlencoded");

    CkHttpResponseW resp;
    success = http.HttpReq(url,req2,resp);
    if (success == false) {
        wprintf(L"%s\n",http.lastErrorText());
        return;
    }

    //  Results are contained in the HTTP response object...
    }