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

HTTPS GET URL with URL Encoded Query Params

See more HTTP Examples

Creates a URL with URL encoded query params, and sends an HTTPS GET to the URL.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkStringBuilderW.h>
#include <CkHttpW.h>

void ChilkatSample(void)
    {
    bool success = false;

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

    // Create a URL with URL-encoded query params.
    CkStringBuilderW sbUrl;
    sbUrl.Append(L"https://www.example.com/something?");

    // If we know a query param value does not have any special chars requiring URL encoding,
    // just add it.  In this case, there is no need to URL encode "123" because "123" url encoded is still just "123".
    sbUrl.Append(L"abc=123&xyz=");

    CkStringBuilderW sbValue;
    sbValue.Append(L"this is a test");

    sbUrl.Append(L"msg=");
    sbUrl.Append(sbValue.getEncoded(L"url",L"utf-8"));

    // sbUrl contains:  https://www.example.com/something?abc=123&xyz=msg=this%20is%20a%20test
    wprintf(L"%s\n",sbUrl.getAsString());

    // Send the GET request and get the response body, which is assumed to be text of some sort (HTML, XML, JSON, etc.)
    // (Chilkat automatically decompresses gzipped responses)
    CkHttpW http;
    const wchar_t *responseBody = http.quickGetStr(sbUrl.getAsString());
    if (http.get_LastMethodSuccess() == false) {
        wprintf(L"%s\n",http.lastErrorText());
        return;
    }

    wprintf(L"Response Body:\n");
    wprintf(L"%s\n",responseBody);
    }