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

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

void ChilkatSample(void)
    {
    bool success = false;

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

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

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

    CkHttpW 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

    CkStringBuilderW sbUrl;

    sbUrl.Append(L"https://www.chilkatsoft.com/something?name=");
    sbUrl.Append(sb1.getEncoded(L"url",L"utf-8"));
    wprintf(L"%s\n",sbUrl.getAsString());

    const wchar_t *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(L"https://www.chilkatsoft.com/something?name=");
    sbUrl.Append(sb1.getEncoded(L"url",L"windows-1252"));
    wprintf(L"%s\n",sbUrl.getAsString());

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