Sample code for 30+ languages & platforms
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 C++ Downloads

C++
#include <CkStringBuilder.h>
#include <CkHttp.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.
    CkStringBuilder sbUrl;
    sbUrl.Append("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("abc=123&xyz=");

    CkStringBuilder sbValue;
    sbValue.Append("this is a test");

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

    //  sbUrl contains:  https://www.example.com/something?abc=123&xyz=msg=this%20is%20a%20test
    std::cout << sbUrl.getAsString() << "\r\n";

    //  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)
    CkHttp http;
    const char *responseBody = http.quickGetStr(sbUrl.getAsString());
    if (http.get_LastMethodSuccess() == false) {
        std::cout << http.lastErrorText() << "\r\n";
        return;
    }

    std::cout << "Response Body:" << "\r\n";
    std::cout << responseBody << "\r\n";
    }