Sample code for 30+ languages & platforms
C++

HTTP GET with utf-8 URL Encoded Query Params

See more HTTP Examples

Demonstrates how to build URLs where query param values can be either URL encoded from the utf-8 representation, or from another charset such as windows-1252.

Note: This example uses the new DecodeAndAppend method added in Chilkat v9.5.0.87.

Chilkat C++ Downloads

C++
#include <CkStringBuilder.h>
#include <CkHttp.h>

void ChilkatSample(void)
    {
    bool success = false;

    // We have the string "MÆRSK".

    // This is the URL encoding of the windows-1252 representation.
    const char *nameWindows1252UrlEncoded = "M%C6RSK";

    CkStringBuilder sb1;
    success = sb1.DecodeAndAppend(nameWindows1252UrlEncoded,"url","windows-1252");

    CkHttp http;

    // Here's how to send an HTTP GET where the param is the utf-8 representation that is URL encoded.
    // For example:  https://www.chilkatsoft.com/something?name=M%C3%A6RSK

    CkStringBuilder sbUrl;

    sbUrl.Append("https://www.chilkatsoft.com/something?name=");
    sbUrl.Append(sb1.getEncoded("url","utf-8"));
    std::cout << sbUrl.getAsString() << "\r\n";

    const char *responseBody = http.quickGetStr(sbUrl.getAsString());

    // Here's how to send an HTTP GET where the param is the windows-1252 representation that is URL encoded.
    // For example:  https://www.chilkatsoft.com/something?name=M%E6RSK

    sbUrl.Clear();
    sbUrl.Append("https://www.chilkatsoft.com/something?name=");
    sbUrl.Append(sb1.getEncoded("url","windows-1252"));
    std::cout << sbUrl.getAsString() << "\r\n";

    responseBody = http.quickGetStr(sbUrl.getAsString());
    }